经典排序算法-------插入排序法

来源:互联网 发布:中国物联网域名注册 编辑:程序博客网 时间:2024/06/06 14:27
/*************************************************************************> File Name: insertsort.c> Author: pengshp> Mail: pengshp3@outlook.com> Created Time: 2015年05月05日 星期二 00时12分21秒 ************************************************************************/#include<stdio.h>#define N 10void insertsort(int * p,int n){int i,j;for(i=2;i<=n;i++){ p[0]=p[i];         //设置p[0]为监视哨  j=i-1; while(p[0]<p[j]){p[j+1]=p[j];  //记录后移 j--;}p[j+1]=p[0];        //将记录插入合适位置 } }  void printArray(int a[],int n){int i;for(i=1;i<=n;i++)printf("%d  ",a[i]);} int main(){   int i,n;   int R[N+1];   printf("\nThis is Insertsort....");   printf("\nPlease intput the length of list(<=10): ");   scanf("%d",&n);   printf("\nPlease intput the date of list: ");   for(i=1;i<=n;i++)   { scanf("%d",&R[i]);    } printf("\nThe disordered list is: "); printArray(R,n); insertsort(R,n); printf("\nThe ordered list is: "); printArray(R,n); return 0; }

0 0