插入排序(C/C++实现)

来源:互联网 发布:网络大电影编号 编辑:程序博客网 时间:2024/05/19 18:38

以下是插入排序的C语言实现,插入排序的思想是:

  • 若当前第i和第i-1相邻两个数据无序,则将第i个数据放入临时单元temp;

  • 将前面i-1个元素中大于temp的一一向后移动;

  • 将temp放入自己的位置

#include<stdio.h>void InsertSort(int array[], int n){    int temp;    for(int i = 1; i < n; i++)    {        if(array[i-1] > array[i])        {            temp = array[i];            int j;            for(j = i-1; array[j] > temp; j--)            {                array[j+1] = array[j];            }            array[j+1] = temp;        }    }}int main(){    int a[6] = {1,4,7,2,3,6};    InsertSort(a, 6);    for(int i = 0; i < 6; i++)    {        printf("%d\n",a[i]);    }    return 0;}