排序算法@c++描述-shell排序
来源:互联网 发布:分数统计软件 编辑:程序博客网 时间:2024/06/02 01:58
2.shell排序
#include <iostream>#include <vector>using namespace std;template <typename T>void shellSort(vector<T> &a){ for (int gap = a.size() / 2; gap > 0; gap /= 2) { for (int i = gap; i < a.size(); i++) { T tmp = a[i]; int j = i; for (; j >= gap && tmp < a[j - gap]; j -= gap) a[j] = a[j - gap]; a[j] = tmp; } }}int main(){ vector<int> test = {190, 435, 834, 8954, 923, 56, 20 ,1, 934}; shellSort(test); for (auto i : test) cout << i << " "; cout << endl; return 0;}
- 运行结果:
$ ./a.out1 20 56 190 435 834 923 934 8954
- 我的个人主页:http://www.techping.cn/
- 我的个人站点博客:http://blog.techping.cn/
- 我的CSDN博客:http://blog.csdn.net/techping
- 我的简书:http://www.jianshu.com/users/b2a36e431d5e/timeline
- 我的GitHub:https://github.com/techping
阅读全文
0 0
- 排序算法@c++描述-shell排序
- 常用排序算法(C描述)
- 排序算法c语言描述---冒泡排序
- 排序算法c语言描述---选择排序
- 排序算法c语言描述---希尔排序
- 排序算法c语言描述---堆排序
- 排序算法c语言描述---归并排序
- 排序算法c语言描述---快速排序
- 排序算法c语言描述---计数排序
- 排序算法c语言描述---桶排序
- C语言SHELL排序算法
- 排序算法(c语言描述)
- 排序算法c语言描述---基数排序
- 排序算法---Shell排序
- 排序算法--shell排序
- 排序算法--Shell排序
- 排序算法c语言描述---直接插入排序
- 归并排序的实现(排序算法c语言描述)
- javascript中的类型判断
- svn服务器搭建
- Reverse Words in a String--LeetCode
- mysql创建表,同时加上约束,SQL查看所有表和查看某个表结构;sql删除表
- 经典背包问题----(01背包、完全背包、多重背包)
- 排序算法@c++描述-shell排序
- C语言回溯法装载问题
- easydss与linux内核接收网络数据流程(四)
- 第6章任务3:创建登录界面
- 367. Valid Perfect Square
- 赋值中的类型转换
- Oc 滚动视图
- Spring Boot @Configuration 和 @Component
- (六)生成器