插入排序算法,请指教
void InsertSort(int a[],int n){
int i,j,temp;
for(int k=0;k<n;k++){
cout<<a[k]<<" ";
}
cout<<endl;
for(i=1;i<n;i++){
temp=a[i];
for(j=0;j<i;j++){
if(a[i]<a[j]){
int key_j=j;//key_j保存从无序插入有序区的标志位
int key_i=i;//key_i保存从无序区开始的标志位
while(key_i>key_j){
a[key_i]=a[key_i-1];
key_i--;
}
a[key_j]=temp;
}
}
}
for(int k=0;k<n;k++){
cout<<a[k]<<" ";
}
};
int main()
{
int a[10]={46,58,15,45,90,18,10,62};
InsertSort(a,8);
return 0;
}