致敬算法
这些算法被工业系统反复实现 —— 从 Huffman 编码到 Raft 共识。每条卡片标注作者/年份/适用范围与一句话价值。
收录标准:被工业系统反复实现并塑造了当代软件栈;与致敬论文不重复 —— 本页以"算法"为对象,论文页以"论文"为对象。共 18 个分 4 组排列。
经典算法 5
-
Huffman 编码
最优前缀码构造,从压缩文件到 JPEG/PNG 压缩的基石
en.wikipedia.org/wiki/Huffman_coding -
Dijkstra 最短路
非负权图最短路径的工程默认,从路由器到地图导航都在用
en.wikipedia.org/wiki/Dijkstra%27s_algorithm -
Quicksort
通用排序的工程默认之一,glibc 的 qsort 与 C 标准库都在用
en.wikipedia.org/wiki/Quicksort -
FFT(Cooley–Tukey)
O(N log N) 离散傅里叶变换的工程版本,从信号处理到音频压缩都依赖
en.wikipedia.org/wiki/Cooley%E2%80%93Tukey_FFT_algorithm -
B-Tree
磁盘页结构的事实标准,PostgreSQL / MySQL / SQLite / 文件系统都基于它
en.wikipedia.org/wiki/B-tree
密码学与安全 4
-
Diffie–Hellman 密钥交换
在不安全信道上建立共享密钥的工程起点,TLS 1.3 仍在用
en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchange -
RSA 公钥密码
第一个实用的公钥加密算法,"公钥密码学"的工程起点
en.wikipedia.org/wiki/RSA_(cryptosystem) -
CRC 校验
检错码的工业默认,磁盘、网卡、压缩格式都内置
en.wikipedia.org/wiki/Cyclic_redundancy_check -
AES 加密标准
Rijndael 算法胜出 NIST 公开评选后成为 AES,对称加密的事实默认
en.wikipedia.org/wiki/Advanced_Encryption_Standard
分布式与图论 5
-
Lamport 逻辑时钟
分布式系统偏序关系的工程起点,Eventual Consistency 的理论底座
en.wikipedia.org/wiki/Lamport_timestamp -
Paxos
第一个工程上可用的分布式共识算法(虽然难懂)
en.wikipedia.org/wiki/Paxos_(computer_science) -
PageRank
把"链接即投票"变成矩阵特征向量问题,定义了早期搜索引擎排序
en.wikipedia.org/wiki/PageRank -
MapReduce
把分布式计算抽象成 map / reduce,开启了大数据十年
en.wikipedia.org/wiki/MapReduce -
Raft
为可理解性重新设计的共识算法,工业主流(etcd / Consul 内部)
raft.github.io
机器学习与 AI 4
-
反向传播(Backpropagation)
现代神经网络训练的工程起点,链式法则的工业级实现
en.wikipedia.org/wiki/Backpropagation -
随机梯度下降(SGD)
"每步用一个小批量估梯度"的范式,是深度学习优化的基线
en.wikipedia.org/wiki/Stochastic_gradient_descent -
卷积神经网络(CNN)
把"局部感受野 + 参数共享"用于图像识别,深度学习视觉时代的起点
en.wikipedia.org/wiki/Convolutional_neural_network -
Self-Attention 机制
把"序列中每个位置可关注所有位置"做成可微运算,是 Transformer 的核心
arxiv.org/abs/1706.03762
为什么致敬算法
会用一个库和懂一个算法是两件事。这一页不重复教科书,但列出"哪些算法值得花时间去懂"。
与致敬论文互补(论文讲思想出处,算法讲工程实现)、与致敬开源互补(很多算法标准实现在主流开源项目里)。完整目录见致敬枢纽。
常见问题
CalcGuide 致敬算法收录了哪些算法?
共 18 个分 4 组:经典算法(Huffman 编码 / Dijkstra / Quicksort / FFT / B-Tree)、密码学与安全(Diffie-Hellman / RSA / CRC / AES)、分布式与图论(Lamport 逻辑时钟 / Paxos / PageRank / MapReduce / Raft)、机器学习与 AI(反向传播 / SGD / CNN / Self-Attention)。
致敬算法与致敬论文有什么区别?
致敬论文以"论文"为对象(带发表会议、作者、DOI 链接),致敬算法以"算法"为对象(带适用范围与一句话价值)。比如 Raft 同时出现在论文页(Ongaro 2014 论文)和算法页(作为分布式共识算法),两面互为索引。
为什么没收录"最新"的算法(如 2024 之后)?
致敬系列定位"被工业系统反复实现的算法"。新算法的工程影响需要时间检验(如 Transformer 论文 2017、但作为算法进入致敬页已经是 2018 之后)。
为什么没收录排序算法的全部变体(冒泡 / 堆排 / 归并)?
致敬的是"有范式定义意义的算法"。堆排序、归并排序虽然工程上重要,但 Quicksort 已是通用排序的工程默认之一,再列变体会变成教科书目录。这一页是"该花时间懂的算法目录",不是"完整算法字典"。
致敬算法与致敬开源、致敬论文、致敬标准如何配合?
算法是"具体思想",论文是"思想出处",标准是"接口定义",开源是"实现落点"。同一 Raft 同时出现在本页(作为共识算法)、论文页(Ongaro 2014)、开源页(etcd 用 Raft 实现)。
← 返回致敬枢纽,查看全部 10 个维度。