using namespace std;void heapadjust(int*&hh,int s,int m); void heapsort(int*h,int q); int h[100]; void main() { int i=1; }
void heapadjust(int*&hh,int s,int m) { }
void heapsort(int*h,int q) { int i=0;
int a=0; int rc=0; int j=0;
for(j=2*s;j<=m;s=j,j*=2) { }
rc=hh[s];
if(j=hh[j]) hh[s]=hh[j]; hh[j]=rc;break;
++j;
int j=0; int q=0;
cout<<\"输入待排序数据(-1退出):\"<>j;// while(j!=-1){ h[i]=j; q++; i++; cout<<\"第\"<>j; } heapsort(h,q);
cout<<\"由小到大分别为:\"; for(i=1;i<=q;i++) cout<}for(i=q/2;i>0;--i) for(i=q;i>1;--i)
heapadjust(h,i,q);
{ a=h[1]; h[1]=h[i]; h[i]=a; heapadjust(h,1,i-1); }
四、 运行结果
图1 运行结果
五、 实验总结
通过本次对堆排序算法的练习,再与其他排序算法的比较,更加明晰各种排序算法的利 弊,这对我以后的程序编写有很大帮助。