#include
using namespace std;
int arr[10]={1,3,7,2,4,9,6,8,0,5};
//
//简单选择排序
void selectSort(int a[],int n)
{
for(int i=0;i
= 0; --i)
HeapAdjust(H,i,length);
}
//堆排序
void hSort(int h[],int len)
{
//初始堆
BuildingHeap(h, len);
//从最后一个元素开始对序列进行调整
for (int i = len - 1; i > 0; --i)
{
//交换堆顶元素H[0]和堆中最后一个元素
int temp = h[i]; h[i] = h[0]; h[0] = temp;
//每次交换堆顶元素和堆中最后一个元素之后,都要对堆进行调整
HeapAdjust(h,0,i);
}
}
int main()
{
//selectSort(arr,10);
hSort(arr,10);
for(int i=0;i<10;i++)
{
cout<
<<" ";
}
return 0;
}
选择排序(简单选择排序 and 堆排序)
最新推荐文章于 2023-10-10 09:33:08 发布