大根堆中插入一个键,下面是我的错误代码,求大神指点
#include<stdio.h>void swap(int *m,int *n)
{
int temp;
temp=*m;
*m=*n;
*n=temp;
}
int main()
{
int a[]={ 0,9,6,8,2,5,7};
int size=7;
a[8]=10;//增加一个键
for(int hole=size+1;hole>1;hole=hole/2){
if(a[size+1]>a[(size+1)/2])//增加的键与其父节点比较
swap(&a[size+1],&a[(size+1)/2]);//若大于则交换
}
return 0;
}