插入排序

来源:互联网 发布:用linux打开文件命令 编辑:程序博客网 时间:2024/05/29 04:43
////  main.c//  FirstProgram////  Created by Calvin Zang on 12-4-17.//  Copyright (c) 2012年 SYSU. All rights reserved.//#include <stdio.h>#include <time.h>#include <stdlib.h>typedef int TYPE;#define N 100void insertionSort(TYPE A[], int n){    int i, j;  TYPE key;    for(i = 1; i < n; ++i){        key = A[i];        j = i-1;        while(j>=0 && A[j] > key){            A[j+1] = A[j];            --j;        }        A[j+1] = key;    }}void insertionSortNonincreasing(TYPE A[], int n){    int i, j; TYPE key;    for(i = 1; i < n; ++i){        key = A[i];        j = i-1;        while(j>=0 && A[j] < key)        {            A[j+1] = A[j];            --j;        }        A[j+1] = key;    }}int main(){    int A[N], i;    srand(time(NULL));    for(i = 0; i < N; ++i)A[i] = rand() % 100;        //insertionSort(A, N);    insertionSortNonincreasing(A, N);        for(i = 0 ; i < N; ++i)    {        printf("%d ", A[i]);        if((i+1)%10==0) printf("\n");    }}