高级算法复习当中的一些经典问题分析以及代码实现基于数组模拟堆实现的堆排序数组模拟堆的下标变换(1-based)在使用数组模拟堆时,通常采用 1-based 索引(即数组下标从 1 开始),这样可以简化父子节点的下标计算: 操作 下标变换公式 父节点下标 parent = i / 2 左孩子下标 left...2026-06-18课程复习 / 高级算法
高级算法复习总览2026高级算法复习核心总结1. 算法复杂度与最优性 概念 含义 举例 最坏复杂度 算法在所有可能输入中所需的最大时间/空间 快排最坏 $O(n^2)$(每次选到最差 pivot) 平均复杂度 算法在所有可能输入上的期望时间/空间 快排平均 $O(n\log ...2026-06-17课程复习 / 高级算法
高级算法复习算法复杂度 最坏复杂度:算法在任何输入实例上运行时间的最坏情况,记为 $ T_{\text{worst}}(n) $。 举例:快速排序最坏情况 $ O(n^2) $(数组已有序且主元选择不当)。 平均复杂度:算法在所有可能输入实例上运行时间的期望,记为 $ T_{\t...2026-06-05课程复习 / 高级算法