插入排序提一下的是减治法中的减常量技术
将第n个数插入一个A[n-1]有序的数组中,见代码:
#include<iostream>
using namespace std;
/*算法思想
*外层for循环,i = 1 to n-1
*内层for循环,j = i - 1;
*/
void insert_sort(int* A, int len){
int temp = 0;
int j=0;
for(int i=1; i < len; i++){
temp = A[i];
for(j=i; temp < A[j-1] && j > 0; j--){
A[j] = A[j-1];
}
A[j] = temp;
}
}
int main(){
int A[10] = {2,1,5,0,3,8,6,4,7,9};
insert_sort(A, 10);
for(int i=0; i < 10; i++){
cout<<A[i]<<" ";
}
cout<<endl;
}