插入排序算法C语言实现
来源:互联网 发布:司马辽太郎 知乎 编辑:程序博客网 时间:2024/05/15 01:37
实现如下:
#include <stdio.h>#include <stdlib.h>#define SIZE 20void insert_sort(int array[], const int size);void swap(int *n1, int *n2);void printArray(int array[], const int size);int main(int argc, char const *argv[]){ int array[SIZE]; int count = 0; srand(time(NULL)); for (count = 0; count < SIZE; count++) { array[count] = rand() % SIZE + 1; } printArray(array, SIZE); insert_sort(array, SIZE); printArray(array, SIZE); return 0;}void insert_sort(int array[], const int size) { int j, k = 1, temp; for (k = 1; k < size; k++) { temp = array[k]; for (j = k - 1; j >= 0 && array[j] > temp; j--) { swap(&array[j], &array[j + 1]); } array[j + 1] = temp; }}void swap(int *n1, int *n2) { int temp = *n1; *n1 = *n2; *n2 = temp;}void printArray(int array[], const int size) { printf("The current array is:\n"); int count = 0; for (count = 0; count < size; count++) { printf("%d ", array[count]); } printf("\n");}
程序使用标准函数库中函数rand产生SIZE个随机数并对其进行插入排序。
插入排序为原地稳定的排序算法,主要思想每次将一个数插入到已排序的数组中去,其渐近确界为
0 0
- 插入排序算法的C语言实现
- 插入排序算法C语言实现
- 插入排序算法C语言实现
- 插入排序算法(C语言实现)
- 直接插入排序算法--c语言实现
- 【算法】直接插入排序C语言实现
- 插入排序算法C语言实现
- C语言排序算法实现之插入排序
- 排序算法的C语言实现-插入排序
- 排序算法之插入排序(C语言实现)
- C语言算法--插入排序
- 算法入门->插入排序->C/C++ 语言实现
- [算法练习]插入排序的C语言实现
- 插入排序C语言实现
- 插入排序c语言实现
- 插入排序C语言实现
- 插入排序C语言实现
- 插入排序(C语言实现)
- Ubuntu下apt-get与pip安装命令的区别
- hdu1584 蜘蛛牌
- python3.X实现socket编程的小处理
- elicse 内存溢出。
- 爬取豆瓣Top250图书【Beautiful】
- 插入排序算法C语言实现
- Java字符串处理
- “快指针”、“慢指针”
- Is Docker ready for production?
- 百度短网址接口
- JSP学习过程中遇到的比较记忆深刻的bug
- spring利用BeanFactoryAware动态获取bean调用的实现
- 设计模式题 以下代码是否需要重构,如何重构
- 日历js代码