低配易懂版:
#include<iostream>
#include<cstring>
#include<cstdlib>
using namespace std;
void insertionSort(int *array,int max){
int i,j;
int temp;
for(i=1;i<max;i++){
temp=array[i];
j=i;
while(j>0&&temp<array[j-1]){
array[j]=array[j-1];
j--;
}
array[j]=temp;
}
}
void print(int *array,int max){
for(int i=0;i<max;i++){
cout<<array[i]<<" ";
}
cout<<endl;
}
int main(){
int Hello[11]={1,23,32,4,5,7,32,123,9,0,2};
print(Hello,11);
insertionSort(Hello,11);
print(Hello,11);
return 0;
}
升级版:
#include<iostream>
#include<cstring>
#include<cstdlib>
using namespace std;
void insertionSort(int *array,int max){
int i,j;
int temp;
for(i=1;i<max;i++){
j=i;
while(j>0&&array[j]<array[j-1]){
temp=array[j];
array[j]=array[j-1];
array[j-1]=temp;
j--;
}
}
}
void print(int *array,int max){
for(int i=0;i<max;i++){
cout<<array[i]<<" ";
}
cout<<endl;
}
int main(){
int Hello[11]={1,23,32,4,5,7,32,123,9,0,2};
print(Hello,11);
insertionSort(Hello,11);
print(Hello,11);
return 0;
}