插入排序是一种简单直观的排序算法,它的基本思想是将一个待排序的元素插入到已经排好序的序列中的适当位置,从而得到一个新的有序序列。具体步骤如下:
- 将待排序序列分为已排序区间和未排序区间。初始时,已排序区间只有一个元素,即第一个元素。
- 从未排序区间取出第一个元素,将其与已排序区间的元素从后往前依次比较,找到合适的位置插入。
- 重复步骤2,直到未排序区间中的所有元素都插入到已排序区间中。
下面是一个示例
代码实现插入排序的过程:
#include<iostream> using namespace std; int main() { int arr[10]={8,4,1,9,7,6,5,4,3,2}; for(int a=1;a<10;a++) { int temp=arr[a]; for(int b=a-1;b>=0&&arr[b]>temp;b--) { arr[b+1]=arr[b]; arr[b]=temp; } } for(int i=0;i<10;i++) { cout<<arr[i]<<" "; } cout<<endl; return 0; }