堆和二叉堆的实现和特性( 五 )

高频题目

  • 剑指 Offer 40. 最小的k个数
  • 239. 滑动窗口最大值
  • 剑指 Offer 49. 丑数
  • 347. 前 K 个高频元素
  • HeapSort : https://www.geeksforgeeks.org/heap-sort/
总结如果只是说堆什么?那么它是一个抽象的数据结构,表示可以非常迅速地拿到一堆数里面的最大值或者最小值,它并不少二叉堆,那么二叉堆和其他的各种堆,维基百科里面有详细说明:
https://en.wikipedia.org/wiki/Heap_(data_structure)
注意:二叉堆只是堆的一种实现形式,二叉堆为什么出现得多?是因为它较为常见且简单,但是它并不是最优的实现,正是因为这个原因,所以二叉堆很多时候并不是完全的那么实用,那么如果在工程的代码里面我们可以直接调 优先队列(priority_queue) 就行了 。

【堆和二叉堆的实现和特性】


推荐阅读