一、算法内容
插入排序将要排序的元素分成两组,已排序的和未排序的。每次将未排序的元素和已排序的元素依次比较,发现已排序序列中元素比待排序元素大则交换他俩的位置。若已排序的元素均比待排序的元素小,不做任何操作,因为算上待排序元素,新的序列仍然有序,进行下一个待排序元素的插入。直到所有元素都都插入到已排序元素中,全部元素排序完毕。
二、代码实现
#include <iostream>
using namespace std;
int main()
{ int arr[8]={1,5,9,3,2,4,7,10};
for(int i=0;i<8;i++)
cout<<arr[i]<<' ';
cout<<endl;
int temp;
for(int i=1;i<8;i++)
{
for(int j=i;j>0;j--)
{if(arr[j]<arr[j-1])
{temp=arr[j];
arr[j]=arr[j-1];
arr[j-1]=temp;}
else
break;
}
}
for(int i=0;i<8;i++)
cout<<arr[i]<<' ';
return 0;
}