这是我参与 8 月更文挑战的第 18 天,活动详情查看: 8月更文挑战
堆是一种基于树的数据结构,这些树必须满足堆的性质。堆的主要性质就是任一父节点都大(小)语或等于它的任一子节点。
二叉堆
二叉堆是一棵完全的二叉树,该树的每个节点最多只能有两个子节点,分别称之为左子节点和右子节点。 二叉堆包括了两种:最小堆和最大堆。对于最小堆,树中任一父节点的值总是小于或等于其左右节点的值;对于最大堆,树中任一父节点的值总是大于或等于其左右子节点的值;
二叉堆的性质
树的根节点值是所有节点值中最小(大)的。 树中每个节点对应的子树也都是最小(大)堆 符合完全二叉树的所有性质。