//
// Created by hejinyang on 2019/12/11.
//
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define LENGTH 100
void InsertSort(int *data, int size) {
int tmp;
int j = 0;
for (int i = 1; i < size; ++i) {
tmp = data[i]; // 先用tmp保存待排序的数字
for (j = i - 1; j >= 0 && data[j] > tmp; j--) {
data[j + 1] = data[j];
}
data[j + 1] = tmp;
}
}
void printInfo(int *data, int size) {
printf_s("[");
for (int i = 0; i < size; ++i) {
printf_s("%d ", data[i]);
}
printf_s("]\n");
}
int main() {
srand((unsigned int) time(NULL));
int data[LENGTH] = {0};
for (int i = 0; i < LENGTH; ++i) {
data[i] = rand() % 100 + 1;
}
printInfo(data, LENGTH);
printf_s("--------------\n");
InsertSort(data, LENGTH);
printInfo(data, LENGTH);
return 0;
}
十大排序之插入排序
最新推荐文章于 2024-03-10 19:50:01 发布