插入排序算法
插入排序算法,请指教
本身对算法理解不深,上学就没好好上过,想重新学习下数据结构,不知道对于插入排序的理解是否正确,大家多指教,谢谢
------解决方案--------------------
.......没错
打扑克牌时,怎么码牌,就怎么插
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;
}
本身对算法理解不深,上学就没好好上过,想重新学习下数据结构,不知道对于插入排序的理解是否正确,大家多指教,谢谢
算法
c
------解决方案--------------------
.......没错
打扑克牌时,怎么码牌,就怎么插