| 算法 | 平均时间复杂度 | 最坏 | 空间 | 稳定 | 适用场景 |
|---|---|---|---|---|---|
| 冒泡排序 | O(n²) | O(n²) | O(1) | ✅ | 教学入门,小数据量 |
| 选择排序 | O(n²) | O(n²) | O(1) | ❌ | 交换次数最少 |
| 插入排序 | O(n²) | O(n²) | O(1) | ✅ | 近乎有序的数据、小数组 |
| 快速排序 | O(n log n) | O(n²) | O(log n) | ❌ | 通用首选,库函数常用 |
| 归并排序 | O(n log n) | O(n log n) | O(n) | ✅ | 稳定排序、链表排序 |
| 堆排序 | O(n log n) | O(n log n) | O(1) | ❌ | 需要原地排序的大数据 |
动画在浏览器本地执行,纯 JavaScript 实现,无外部依赖。
颜色含义:黄色 = 正在比较,
红色 = 正在交换/写入,
绿色 = 已就位。
嵌入式开发里同样处处是排序(如 ADC 采样值排序滤波、Modbus 报文解析、任务调度),理解这些基础算法是写高效固件的第一步。
更多算法内容见 传感器知识 · 算法。