来源:互联网 发布:linux close函数 编辑:程序博客网 时间:2024/06/05 02:50

1.是一棵完全二叉树
2.堆中存储的数据是局部有序的(也就是说,结点存储的值与其子结点存储的值之间存在某种联系)

大根堆

任意一个结点的值都大于或等于其任意一个子结点存储的值。由于根结点包含大于或等于其子结点的值,而其子结点又依次大于或等于各自子结点的值,所以根结点存储着该树所有结点的最大值

小根堆

每个结点存储的值都小于或等于其子结点存储的值。由于根结点包含小于或等于其子结点的值,而其子结点又一次大于或等于各自子结点的值,所以根结点存储了该树所有结点中的最大值

大根堆与小根堆中,任何一个结点与其兄弟之间都没有必然的联系

可以通过排序关系的强度来明显区分BST和堆
BST定义了一组完全排序的结点,而堆只实现了局部排序

堆的建立

假设堆的n个值已知: 1 2 3 4 5 6 7

堆的建立的两种方法

0 0