数据结构和算法及其应用

Introduction

本项目旨在不断总结和实现面试和实际场景中的数据结构和算法问题,
项目仍然在不断完善中,欢迎您的加入。

notice:

  • 您可以首先通过我的思维导图了解每部分大致内容,
  • 然后根据思维导图中的链接跳转到我的博客,查看具体笔记内容,
  • 最后通过博客前端链接访问我的github,查看具体代码实现。

special:

  • ds means Data Structure, alg means Algorithm, log means the logic subject.

Project Structure:

数据结构及其应用(ds)

排序(sort)

  • 内部排序
    • 简单排序:
      • 冒泡排序、堆排序、插入排序、选择排序及测试类
    • 普通排序:
      • 桶排序、计数排序、归并排序、基数排序
    • 快排优化:
      • 快排
      • 快排及插入法改进的快排。
    • 内部排序的应用:
      • 将一段压缩后的字符串解压缩,并且排序输出。
      • 返回数组中最小的k个数。
      • 给定一个英文字符串,请写一段代码找出这个字符串中首先出现三次的那个英文字符(需要区分大小写)。
      • 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。
  • 外部排序

线性表(line)

堆栈队列(stack_heap_queue)

串(string)

树(tree)

图(graph)

算法(alg)

  • 动态规划
  • 回溯
  • 贪心
  • 分支限界

逻辑及面试题(logic)

  • 游戏
  • 数学
  • 正则
    数据结构和算法及其应用