其他相关知识点链接:
知识点:
- 堆的特点
- 大顶堆和小顶堆的特点
- 堆的相关操作
- 值类型和引用类型的区别
- 什么是多型数据结构
- 筛选法建堆的原理
- 升序排序和降序排序
知识点解答
1.堆的特点
除了最底层外,该树是完全充满的,而且是从左到右填充的完全二叉树,但不是满二叉树、排序二叉树、平衡二叉树(因为堆的左右子树的高度差并不保证小于等于1)
2.大顶堆和小顶堆的特点
大顶堆——父结点的值大于等于子结点的值
小顶堆——父结点的值小于等于子结点的值
3.堆的相关操作
建堆
public void MAX_HEAPIFY(int[] num,int i){
int left = 2*i+1;
int right = 2*i+2;
int largest = i;
if(left < num.length && num[left]>num[i]){
largest = left;
}
if(right < num.length && num[right]> num[largest]){
largest = right;
}
if(largest != i){
int temp = num[i];
num[