八大排序之希尔排序
2016-05-16 11:30
344 查看
希尔排序就是插入排序的升华版,具体可以百度。。。。
代码:
测试结果:
代码:
public class ShellSort { public static void main(String[] args) { int[]a={1,6,5,4,3,2,7}; //希尔排序 int d=a.length; while(true) { d=d/2; for(int x=0;x<d;x++) { for(int i=x+d;i<a.length;i=i+d) { if(a[i]<a[i-d])//0~i-1位为有序,若第i位小于i-1位,继续寻位并插入,否则认为0~i位也是有序的,忽略此次循环,相当于continue { int temp=a[i]; int j; for(j=i-d;j>=0&&a[j]>temp;j=j-d) { a[j+d]=a[j]; } a[j+d]=temp; } } } if(d==1) break; } for(int i=0;i<a.length;i++) System.out.print(a[i]+" "); } }
测试结果:
相关文章推荐
- iOS自定义控件之倒计时器
- 图表插件——Highcharts插件的使用(一柱状图)
- 常用小算法
- 获取浏览器版本,已实现辨别是苹果系统还是安卓系统
- 在Activity中使用Thread导致的内存泄漏
- c:forEach读取首个元素
- LeetCode-125.Valid Palindrome
- Hashmap实现原理
- iphone真机无法显示图片,而模拟器可以正常显示
- edgesForExtendLayout 属性
- 宏函数
- 运行于云端的Hadoop——数据即服务的论证
- Android studio 如何修改工程的包名
- iOS核心动画实现仿支付宝咻咻、雷达效果
- ubuntu安装php-curl与php-tidy扩展
- 阿里云OSS图片服务
- 【ROS】Choosing a queue_size - queue_size的大小的设置
- Mysql异常
- OCR----你不得不知的Tesseract六大重要核心
- 批处理笔记