对于数据结构堆来说,堆事一种特定的数据结构,其与二叉树非常类似,但是又与二叉树有所不同,其不同点在于堆不需要左右指针指向孩子节点,而给定一个数组,将数组中的元素进行特定排序之后,就可以得到一个堆,如图是一个数组
添加图片注释,不超过 140 字(可选)
该数组的对应的堆如图:
添加图片注释,不超过 140 字(可选)
从其堆中可以知道,堆在结构上与二叉树几乎一模一样,图中显示的左右指针指向的孩子节点,将数组元素按照堆显示的层级进行排列即可,也就是将数组中的元素按照堆排列后就可以满足堆的性质。
添加图片注释,不超过 140 字(可选)
而在给定一个元素下标之后,就可以快速查找到该元素所对应的父节点