#include <iostream>
using namespace std;
void insert_sort(int data[],int length)
{
int i,j,iTemp;
for(i = 1;i < length;i++){//认为前面的数据是已经排好序的,所以从第二个位置开始
for(j = i-1;j >= 0;j--){
if(data[j + 1] < data[j]){//相邻两个位置的数据进行比较
iTemp = data[j];
data[j] = data[j+1];
data[j+1] = iTemp;
}
else{//若大于,则表明前面已排好序,退出本次循环
break;
}
}
}
}
void print(int data[],int length)
{
for(int i = 0;i < length;i++){
cout << data[i] << " ";
}
cout << endl;
}
int main()
{
int data[] = {3,5,6,8,1,2,4,9,7};
print(data,sizeof(data)/sizeof(int));
cout << "#####################" << endl;
insert_sort(data,sizeof(data)/sizeof(int));
print(data,sizeof(data)/sizeof(int));
cout << "#####################" << endl;
return 0;
}