栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java堆排序

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java堆排序

public class StackSortTest {
public static void main(String[] args) {
int arr[]={3,44,38,5,47,15,36,26,27,2,46,4,19,50,48};
for (int i=0;i
heapInsert(arr,i);
}
for(int i=0;i
swap(arr,0,arr.length-1-i);
heapfi(arr,0,arr.length-1-i);
}
for (int i : arr) {
System.out.print(i+" ");
}
}
public static void heapInsert(int arr[],int index){
while (arr[index]>arr[(index-1)/2]){
swap(arr,index,(index-1)/2);
index=(index-1)/2;
}
}
public static void heapfi(int []arr,int index,int heapSize){
int left=(index2)+1;//左边的树
while(left int largest=left+1arr[left]?left+1:left;
largest=arr[largest]>arr[index]?largest:index;
if(largest==index)
break;
swap(arr,largest,index);
index=largest;
left=index
2+1;
heapSize–;
}
}
private static void swap(int[] arr, int index, int i) {
int temp=arr[index];
arr[index]=arr[i];
arr[i]=temp;
}
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/434928.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号