//
// 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 100
void 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");
}
}
插入排序
最新推荐文章于 2025-03-31 10:53:38 发布
本文提供了一个使用C语言实现的插入排序示例代码,包括递增和非递增两种排序方式,并展示了如何通过随机数初始化数组及排序后的输出效果。
2587

被折叠的 条评论
为什么被折叠?



