希尔排序
2016-04-13 12:53
344 查看
#include<stdio.h> #define MAX 250 int R[MAX]; //某一确定增量d的希尔排序 void Shell_Pass(int d,int n) { int i,j; for(i=d+1;i<=n;i++) { if(R[i]<R[i-d]) { R[0]=R[i]; j=i-d; do{ R[j+d]=R[j]; j=j-d; }while(j>0&&R[0]<R[j]); R[j+d]=R[0]; } } } void Shell_Sort(int n) { int d=n; do{ d=d/3+1; Shell_Pass(d,n); }while(d>1); } int main() { int n,i,d; printf("希尔排序示例:\n"); printf("Please input n above 1 and below %d\n",MAX); scanf("%d",&n); if(n<1||n>MAX) { printf("The n you input is not right!BYE!"); return 0; } printf("Please input the array one by one:\n"); for(i=1;i<=n;i++) { scanf("%d",&R[i]); } printf("The array you input is :\n"); for(i=1;i<=n;i++) { printf("%d ",R[i]); } Shell_Sort(n); printf("The array after Shell order is:\n"); for(i=1;i<=n;i++) { printf("%d ",R[i]); } return 0; }
相关文章推荐
- android学习12——重载SurfaceView一些方法的执行顺序
- Linux终端telnet连接xxx邮箱server通过命令行实现mail发送
- Ubuntu Server设置语言为英文
- 【LeetCode-27】Remove Element
- hive数据仓库入门及其环境搭建
- Xcode 创建c++项目
- 希尔排序
- Xib的使用与File'Owner总结
- HUST 1010 The Minimum Length
- 在2016(第八届)企业级数据中心建设论坛的演讲
- 在2016(第八届)企业级数据中心建设论坛的演讲
- 总结下自己的做的小视频吧,挺有趣发现也挺幼稚,哈哈
- 企业信息调查
- 将openstack 默认的GRE网络改为VXLAN网络
- bootstrap日期插件官方文档与demo案例
- 【转】关于手机号注册的一些思考
- KMPlayer
- java实现图片压缩
- zoj3705 Applications 【简单模拟】
- LeetCode 14. Longest Common Prefix