数据结构与算法分类导航

169 阅读1分钟
  1. 字符串(字符串匹配) 

  2. 数组(后缀数组)

  3. 链表(单链表、双向链表、循环链表/环链表) 

  4. 跳表

  5. 堆(优先队列)

  6. 栈(单调栈) 

  7. 队列(单调队列) 

  8. 哈希(哈希表、哈希函数、滚动哈希、一致性哈希) 

  9. 集合

  10. 树(二叉树、二叉搜索树/二叉排序树、树状数组/二叉索引树、平衡二叉树、字典树、线段树、最小生成树、并查集、红黑树) 

  11. 图(最短路、欧拉回路、强连通分量、双连通分量、拓扑排序) 

  12. 位图

  13. 布隆过滤器

  14. 查找(二分查找、最短路、深度优先搜索、广度优先搜索、记忆化搜索) 

  15. 排序(基数排序、归并排序、桶排序、拓扑排序、计数排序、快速排序、插入排序、希尔排序) 

  16. 算法思想(枚举、递归、回溯)、(递推、模拟、迭代)、(贪心、分治、动态规划)、(分支界限、概率、近似) 

  17. 数学(集合、矩阵、数论、组合数学、概率与统计、水塘抽样、拒绝采样、几何、博弈、随机化、脑筋急转弯) 

  18. 典型问题(双指针、滑动窗口、位运算、数据流、状态压缩、交互、扫描线、计数、快速选择、迭代器、前缀和与差分、设计) 

参考:

JavaScript 构造树形结构的一种高效算法