标签: 堆排序

3 个内容

笔记(3)

本文深入解析九大排序算法,从基础排序到分治、堆、线性排序,探讨其原理、优化及适用场景。强调算法选型需权衡时空复杂度、稳定性等因素,并结合具体案例分析常见陷阱及解决方案。

Elliot Yang·
159 浏览

本文介绍了使用 Rust 实现二叉堆(MinHeap)的数据结构。利用 Rust 的 Vector 作为底层存储,实现了`push`(上浮)和 `pop`(下沉)操作来维护堆的完全二叉树和堆性质。代码示例展示了最小堆的实现细节,包括`bubble_up`和`bubble_down`算法。

Elliot Yang·
103 浏览

本文总结了常见的排序算法,包括选择排序、冒泡排序、插入排序、快速排序、堆排序、归并排序、计数排序和桶排序。针对每种算法,文章简述了其原理,并提供了 TypeScript 代码实现。这些算法在时间复杂度、空间复杂度和适用场景上各有特点。

Elliot Yang·
142 浏览