算法种类
关键词
算法的五个重要特征:有穷性、确定性、可行性、输入、输出。
排序算法
- 冒泡排序(Bubble Sort)
- 选择排序(Selection Sort)
- 插入排序(Insertion Sort)
- 希尔排序(Shell Sort)
- 归并排序(Merge Sort)
- 快速排序(Quick Sort)
- 堆排序(Heap Sort)
- 计数排序(Counting Sort)
- 桶排序(Bucket Sort)
- 基数排序(Radix Sort)
搜索算法
- 线性搜索(Sequential Search)
- 二分搜索(Binary Search)
- 广度优先搜索(Breadth-First Search,BFS)
- 深度优先搜索(Depth-First Search,DFS)
- A*搜索算法(A-star)
图算法
- 最短路径算法(Dijkstra、Bellman-Ford、Floyd-Warshall)
- 最小生成树算法(Prim、Kruskal)
- 拓扑排序(Topological Sort)
- 强连通分量(Strongly Connected Components,SCC)
动态规划
- 背包问题(0/1 背包、完全背包)
- 最长公共子序列(Longest Common Subsequence)
- 最短编辑距离(Edit Distance)
- 最长递增子序列(Longest Increasing Subsequence)
贪心算法
- 霍夫曼编码(Huffman Coding)
- 最小生成树算法中的 Prim 和 Kruskal 算法
分治算法
- 归并排序(Merge Sort)
- 快速排序(Quick Sort)
- 汉诺塔问题
字符串匹配算法
- 暴力匹配
- KMP 算法(Knuth-Morris-Pratt)
- Boyer-Moore 算法
数值计算
- 牛顿法(Newton's Method)
- 龙贝格积分法(Romberg Integration)
- 高斯消元法(Gaussian Elimination)
- 迭代法解线性方程组
机器学习和数据挖掘
- K 均值聚类算法(K-Means Clustering)
- 支持向量机(Support Vector Machine,SVM)
- 决策树(Decision Tree)
- 随机森林(Random Forest)
- Apriori 算法
加密和哈希算法
- RSA 加密算法
- MD5 哈希算法
- SHA 算法系列
图像处理和计算机视觉
- Canny 边缘检测算法
- 霍夫变换(Hough Transform)
- SIFT(尺度不变特征变换)
自然语言处理
- 朴素贝叶斯分类器
- TF-IDF(Term Frequency-Inverse Document Frequency)
- Word2Vec
神经网络和深度学习
- 感知机(Perceptron)
- 反向传播算法(Backpropagation)
- 卷积神经网络(Convolutional Neural Network,CNN)
- 循环神经网络(Recurrent Neural Network,RNN)
数据压缩
- 哈夫曼编码(Huffman Coding)
- LZ77 和 LZ78 压缩算法
数据结构和算法设计
- 平衡树(AVL Tree、Red-Black Tree)
- 字典树(Trie)
- 并查集(Union-Find)
- 滑动窗口算法(Sliding Window)
数据库和存储
- B 树(B-tree)
- LSM 树(Log-Structured Merge Tree)
优化算法
- 模拟退火算法(Simulated Annealing)
- 遗传算法(Genetic Algorithm)
数学和统计学
- 快速傅里叶变换(Fast Fourier Transform,FFT)
- 马尔可夫链蒙特卡洛(Markov Chain Monte Carlo,MCMC)
加密和安全性
- Diffie-Hellman 密钥交换
- AES 加密算法
- RSA 数字签名算法
数据流处理
- 流式计算
- 基数估计算法
音频处理
- FFT(快速傅里叶变换)
- 音频压缩算法(如 MP3)
计算几何
- 凸包算法(Convex Hull)
- 最近点对算法(Closest Pair)
复杂性理论
- P vs NP 问题
- NP 完全问题
量子计算
- Shor 算法
- Grover 算法
实时系统
- Earliest Deadline First 调度算法(EDF)
并发算法
- 同步原语
- 互斥算法
图数据库算法
- 图数据库查询算法
游戏算法
- A*路径规划
- Minimax 算法(博弈树)
网络和分布式系统
- 一致性哈希算法
- Paxos 算法
- Raft 算法