希尔排序源码
来源:互联网 发布:淘宝网店怎么管理 编辑:程序博客网 时间:2024/05/11 22:31
希尔排序源码
#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<stdlib.h>#include<time.h>/*打印数组*/void MyPrint(int *arr, int len){for (int i = 0; i < len; i++){printf("%d\t", arr[i]);}printf("\n");}/*希尔排序*/void ShellSort(int *arr, int len){int increment = len;do {/*缩减增量*/increment = increment / 3 + 1;for (int i = 0; i < increment; i++){/*遍历每一组*/for (int j = i + increment; j < len; j += increment){if (arr[j] < arr[j - increment]){int temp = arr[j];int k = j - increment;for (; k >= 0 && temp < arr[k]; k -= increment){arr[k + increment] = arr[k];}arr[k + increment] = temp;}}}} while (increment > 1);}/*数组生成*/int *RandomArr(int len){int *arr = (int *)malloc(sizeof(int)*len);for (int i = 0; i < len; i++){arr[i] = rand() % 10 + 40;}return arr;}int main(){srand((unsigned)time(NULL));int len = rand() % 5 + 6;int *arr = RandomArr(len);MyPrint(arr, len);ShellSort(arr, len);MyPrint(arr, len);free(arr);system("pause");return EXIT_SUCCESS;}
1 0
- 希尔排序源码
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- GetSystemTimeAsFileTime讲解
- git无法pull仓库refusing to merge unrelated histories
- java.io.File 删除文件delete()和deleteOnExit()的区别
- [Leetcode] 46. Permutations 解题报告
- Effective Java: 类和接口
- 希尔排序源码
- systemctl用法
- VS2012中CSting , std::string , char * 之间的转换
- 各类技术视频地址
- 实战c++中的string系列--std:vector<char> 和std:string相互转换(vector to stringstream)
- 设置Linux下vi和vim语法高亮、显示行数
- Lua的for in
- 进步,从开源开始
- 正则表达式学习笔记(常用的)