#include <stdio.h>
#include <stdlib.h>
#include <time.h>


#define INFINITY 2147483647
#define SIZE 10

void insert(int list[], int key, int sortedNumber)
{
    int tmp = sortedNumber;
    while(key < list[tmp]){
        list[tmp+1] = list[tmp];
        tmp--;
    }
    list[tmp+1] = key;
}

void insertionSort(int list[], int n)
{
    list[0] = -INFINITY;
    for(int i = 2; i<=n; i++)
        insert(list, list[i], i-1);
}

int main()
{
    srand(time(NULL));

    int list[SIZE+1];
    for(int i = 1; i<=SIZE; i++)
        list[i] = rand()%100;

    printf("before: ");
    for(int i = 1; i<=SIZE; i++)
        printf("%d ", list[i]);
    printf("\n");

    insertionSort(list, SIZE);
    printf("after: ");
    for(int i = 1; i<=SIZE; i++)
        printf("%d ", list[i]);
    printf("\n");

    return 0;
}

arrow
arrow
    全站熱搜

    大神(偽) 發表在 痞客邦 留言(0) 人氣()