C语言:用插入排序算法对一个数组进行排序

来源:互联网 发布:如何理解大数据时代 编辑:程序博客网 时间:2024/05/16 00:58
#include<stdio.h>#include<stdlib.h>#include<time.h>#define NUMBER 10//NUMBER为数组的大小 void insertSort(int [],int);void display(int [],int);int main(){  int num[NUMBER];  int randValue = 0;  int i,temp;    srand(time(NULL));  //随机生成NUMBER个1-100的随机数   for(i=0;i<NUMBER;i++)  {        randValue=1+(int)rand()%100;        num[i]=randValue;  }  srand(time(NULL));  printf("使用插入排序算法\n");  printf("排序前:");  display(num,NUMBER);//打印数组内容   insertSort(num,NUMBER);//调用插入排序算法   printf("排序后:");  display(num,NUMBER);  return 0;}void insertSort(int num[],int count){    int i,j,temp;        for(i = 1;i < count;i++)    {        temp=num[i];        j=i-1;        while((j>=0)&&(temp<num[j]))        {            num[j+1]=num[j];            j--;        }        num[j+1]=temp;    }}void display(int num[],int count){    int i;    for(i=0;i<count;i++)    {         printf("%d\t",num[i]);    }    printf("\n");}
插入排序算法原理理解起来简单,从第一位开始往后遍历,找到适合的位置插入即可。
原创粉丝点击