-
排序算法:
-
快速排序(Quick Sort):使用
std::sort
或自定义实现。 -
归并排序(Merge Sort):自定义实现或使用
std::stable_sort
。 -
堆排序(Heap Sort):自定义实现或使用
std::make_heap
和std::sort_heap
。
-
-
搜索算法:
-
二分查找(Binary Search):使用
std::binary_search
或自定义实现。 -
线性查找(Linear Search):自定义实现。
-
-
图算法:
-
深度优先搜索(DFS):用于图的遍历,自定义实现。
-
广度优先搜索(BFS):也用于图的遍历,自定义实现。
-
最短路径算法(Dijkstra、Floyd-Warshall等):自定义实现或使用第三方库。
-
最小生成树算法(Prim、Kruskal等):自定义实现或使用第三方库。
-
-
动态规划:
-
背包问题(0/1背包、多重背包等):自定义实现。
-
最长公共子序列(LCS):自定义实现。
-
最长递增子序列(LIS):自定义实现。
-
-
字符串处理:
-
字符串匹配(KMP算法、Boyer-Moore算法等):自定义实现或使用第三方库。
-
字符串编辑距离(Levenshtein距离):自定义实现。
-
-
树结构:
-
二叉树遍历(前序、中序、后序遍历):自定义实现。
-
平衡二叉树(AVL树、红黑树等):自定义实现或使用STL的
std::set
和std::map
。 -
哈夫曼树:自定义实现。
-
-
排序和搜索算法的优化:
-
桶排序(Bucket Sort):自定义实现。
-
基数排序(Radix Sort):自定义实现。
-
哈希表(Hash Table):使用STL的
std::unordered_map
和std::unordered_set
。
-
-
图算法的优化:
-
拓扑排序:自定义实现。
-
最短路径算法的优化(Dijkstra算法的堆优化版本):自定义实现。
-