当前位置:   article > 正文

堆结构及堆排序heapify

heapify

堆结构及堆排序heapify

经朋友推荐,在b站看正月点灯笼讲解的堆排序。感觉讲的不错。小计总结。
heap
堆的结构是完全二叉树
从上到下,从左往右。父节点值>子节点;
heapify(形成堆结构排序):父节点与最大子节点交换,形成堆的结构;从h-1层(倒数第二层)
逻辑公式表示:
int arr[] = {10,5,8,3…};
节点:i=3;
P=(i-1)/2;
c1=2i+1;
c2=2i+2;

代码:

    //数组交换;
    void swap(int arr[],int i,int j){
   
		int temp=arr[i];
		arr[i]=arr[j];
		arr[j]=temp;
	}
	//从上往下heapify(形成堆结构排序);
	void heapify(int tree[],int n,int i){
   
		
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/煮酒与君饮/article/detail/943807
推荐阅读
相关标签
  

闽ICP备14008679号