插入排序就是每一步都将一个待排数据按其大小插入到已经排序的数据中的适当位置,直到全部插入完毕。
#include<iostream>
using namespace std;
int insert_sort(int a[],int n);
int output(int a[],int n);
int main()
{
int a[]={2,1,3,1};
int n = 4;
output(a,n);
insert_sort(a,n);
output(a,n);
return 0;
}
int insert_sort(int a[],int n)
{
for(int i=1;i<n;i++)
{
int j =i-1;
int temp = a[i];
while(a[j]>temp&&j>=0)
{
//a[i]=a[j];
a[j+1]=a[j];
j--;
}
if(j!=i-1)
a[j+1]=temp;
}
return 0;
}
int output(int a[],int n)
{
for(int i = 0;i<n;i++)
cout<<a[i]<<' ';
cout<<endl;
return 0;
}