成为算法工程师需要必备的算法知识

一、 基础(Foundations)

1、计算中算法的角色(The Role of Algorithms in Computing)

2、 函数的增长率(Growth of Functions)

3、 递归(Recurrences)

4、 随机化算法( Randomized Algorithms)

二、 排序与顺序统计(Sorting and Order Statistics)

5、 堆排序(Heapsort)

6、 快速排序(Quicksort)

7、 线性时间中的排序(Sorting in Linear Time)

8、 中值与顺序统计(Medians and Order Statistics)

三、 数据结构(Data Structures)

9、 基本的数据结构(Elementary Data Structures)

10、 散列表(Hash Tables)

11、二叉查找树(Binary Search Trees)

12、 红-黑树(Red-Black Trees)

13、扩充的数据结构(Augmenting Data Structures)

四、高级的设计与分析技术(Advanced Design and Analysis Techniques)

14、动态规划(Dynamic Programming)

15、 贪婪算法(Greedy Algorithms)

16、 分摊分析(Amortized Analysis)

五、 高级的数据结构(Advanced Data Structures)

17、 B-树(B-Trees)

18、 二项式堆(Binomial Heaps)

19、 斐波纳契堆(Fibonacci Heaps)

20、不相交集的数据结构(Data Structures for Disjoint Sets)

六、 图算法(Graph Algorithms)

21、基本的图算法(Elementary Graph Algorithms)

22、 最小生成树(Minimum Spanning Trees)

23、单元最短路径(Single-Source Shortest Paths)

24、 全对的最短路径(All-Pairs Shortest Paths)

25、 最大流(Maximum Flow)

七、 精选的主题(Selected Topics)

26、 排序网络(Sorting Networks)

27、矩阵运算运算(Matrix Operations)

28、 线性规划(Linear Programming)

29、 多项式与快速傅里叶变换(Polynomials and the FFT)

30、 数论算法(Number-Theoretic Algorithms)

31、 字符串匹配(String Matching)

32、计算几何学(Computational Geometry)

33、NP-完备性(NP-Completeness)

34、 近似算法(Approximation Algorithms)

 

你可能感兴趣的:(算法与数据结构)