直接插入排序

来源:互联网 发布:python离散化数据 编辑:程序博客网 时间:2024/06/10 07:45
#include "stdafx.h" void insertSort(int arr[],   int size) {        int i,j;        int temp;        for (i = 1; i<size;i++)        {                temp = arr[i];                j=i-1;                 //与已排序的数逐一比较,大于temp时,该数移后                while((j>=0) && (arr[j] > temp))  //当first=0,j循环到-1时,由于[[短路求值]],不会运算array[-1]                {                        arr[j+1] = arr[j];                        j--;                }                arr[j+1] = temp;      //被排序数放到正确的位置         } }int main(int argc, char* argv[]){int data[]={10,7,5,6,9,8,4,2,0,1,3,45,4};int size=(sizeof(data)/sizeof(data[0]));insertSort(data,size);for(int i=0;i<size;i++){printf("%d ",data[i]);}  int aaa;scanf("%d",&aaa);return 0;}

原创粉丝点击