堆的底层实际上是一棵完全二叉树,可以用数组实现 每个的节点元素值不小于其子节点 - 最大堆 每个的节点元素值不大于其子节点 - 最小堆 堆在处理某些特殊场景时可以大大降低代码的时间复杂度,例如在庞大的数据中找到最大的几个数或者最小的几个数,可以借助堆来完成这个过程。 堆的基本操作 数据流中的中位数 最小的k个数