- Categories · 算法-

2021

本文详细介绍了快速排序(Quick Sort)算法的原理,包括基准值选择策略、原位划分过程,并深入分析了其在最好、最坏及平均情况下的时空复杂度($O(n \log n)$ 至 $O(n^2)$),最后提供了 Java 和 C 语言的代码实现示例。

本文详细介绍了插入排序(Insertion Sort)算法的原理、伪代码、时空复杂度分析,并提供了 Java 和 C 语言的实现代码。插入排序在小规模数据或部分有序数据上表现优异。

2020

本文详细介绍了经典的选择排序算法(Selection Sort)。包括其工作原理(寻找最小元素并交换)、图解演示、伪代码、性能分析($O(n^2)$ 时间复杂度,不稳定),以及 Java 代码实现,重点探讨了其不稳定性及原因。

本文全面解析了线性搜索和二分搜索两种基础且核心的搜索算法。通过伪代码、示例和 Java 代码实现,详细阐述了它们的工作原理,并对比了 $O(n)$ 与 $O(\log n)$ 的时间复杂度差异,特别探讨了二分搜索中防止整型溢出的技巧,以及在 Java 中使用标准库进行高效搜索的最佳实践。