算法学习目录

发布时间:2024年01月03日

排序算法: 将一组元素按照一定的顺序排列。

冒泡排序(Bubble Sort)
选择排序(Selection Sort)
插入排序(Insertion Sort)
快速排序(Quick Sort)
归并排序(Merge Sort)
堆排序(Heap Sort)

查找算法: 在一组数据中找到特定元素的位置。

顺序查找(Sequential Search)
二分查找(Binary Search)

图算法: 处理图结构的算法。

深度优先搜索(Depth-First Search,DFS)
广度优先搜索(Breadth-First Search,BFS)
最短路径算法(Dijkstra、Floyd-Warshall)
最小生成树算法(Prim、Kruskal)

动态规划: 通过拆分问题,将其划分为子问题,通过求解子问题来求解原问题。

背包问题(0/1 背包、多重背包)
最长公共子序列(Longest Common Subsequence)
最短编辑距离(Edit Distance)

贪心算法: 每一步都采取当前状态下最优的选择。

哈夫曼编码(Huffman Coding)
最小生成树算法中的 Prim 和 Kruskal 算法
字符串匹配算法: 在一个字符串中查找一个子串。

暴力匹配算法

KMP 算法(Knuth-Morris-Pratt)
Boyer-Moore 算法

位运算: 对二进制位进行操作的算法。

与、或、异或等位运算
位操作的一些高级技巧

数论算法: 处理整数的算法。

欧几里得算法(求最大公约数)
质数相关算法

分治算法: 将一个问题划分成多个子问题,分别求解,再将结果合并。

归并排序
快速排序
棋盘覆盖问题

搜索算法: 在一个问题空间中寻找解的算法。

A* 算法
模拟退火算法
文章来源:https://blog.csdn.net/qq_43730559/article/details/135364085
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。