参考书目《算法设计、分析与实现从入门到精通:c、c++和java》。
第一篇总结一下插入排序的算法:
void insertSort(int *a,int n){
int i,j;//j用来记录要插入的元素的下标
int key;//用来记录要插入的数
for(j=1;j<n;j++){
key=a[j];
i=j-1;
while(i>=0&&a[i]>key){
a[i+1]=a[i];
i--;
}
a[i+1]=key;
}
}
形参用指针,即传递的是数组元素的地址,这样能控制我们想要排序的部分:
int a[10]={,3,4,2,1,5,6,7,8,11,21};
insertSort(a+2,5);//从第三个元素开始到之后的5个数字进行排序。

本文详细介绍了插入排序算法的原理、步骤,并通过C/C++和Java三种语言的实现代码,深入剖析了其核心操作和优化点。特别强调了指针的使用方法,以控制排序部分,为读者提供了一套全面且实用的排序算法学习指南。
2139

被折叠的 条评论
为什么被折叠?



