java 希尔排序
来源:互联网 发布:单词社交网络怎么样 编辑:程序博客网 时间:2024/06/05 08:37
package 快速排序_归并排序_二分查找_等排序;/*希尔排序 * 升序 * 不稳定 */public class ShellSort {public static void main(String args[]){int[] arr = { 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, -1, -2, -3 };int d=arr.length;while(true){d=d/2;for(int i=0;i<d;i++){for(int j=i+d;j<arr.length;j=j+d){int temp = arr[j];int k;for(k=j-d;k>=0&&arr[k]>temp;k=k-d){arr[k+d]=arr[k];}arr[k+d]=temp;}}if(d==1){break;}}for(int i=0;i<arr.length;i++){System.out.println(arr[i]);}Sort(arr);}public static void Sort(int[] arr){//排序算法int d=arr.length;while(true){d=d/2;//增量for(int x=0;x<d;x++){for(int i=x+d;i<arr.length;i=i+d){int temp = arr[i];int j;for(j=i-d;j>=0&&arr[j]>temp;j=j-d)/*假设增量为5, * 则第一次比较 第一个和第五个 * 第二次比较第二个和第六个 * 若第一个大于第五个 则把第一个的值赋给第五个,一趟调整之后最后一个应该调整的位置是最大的值即temp */{arr[j+d]=arr[j];}arr[j+d]=temp;}}if(d==1){break;}}for(int i=0;i<arr.length;i++){System.out.println(arr[i]);}}}
0 0
- java排序-希尔排序
- 希尔排序[Java实现]
- java-------希尔排序
- java希尔排序算法
- 希尔排序 Java
- java希尔排序
- java希尔排序
- Java实现希尔排序
- java的希尔排序
- 希尔排序----java实现
- java希尔排序
- (Java)希尔排序
- java希尔排序算法
- java的希尔排序
- Java代码 希尔排序
- Java-希尔排序
- Java 希尔排序
- java 希尔排序
- 文章标题
- [SPOJ 3267] D-query (离线询问+树状数组)
- 对Atom 1.9 及 VSCODE 1.3+不能拖拽打开文件或者文件夹问题【个人解决方案】
- 土地利用分类
- MVC5+EF6 入门完整教程九
- java 希尔排序
- VC Dimension (VC 维)
- POJ3438-Look and Say
- GitLab安装部署
- 高德地图自定义Marker显示文字
- Muduo库的框架剖析及总结(二)
- MVC5+EF6 入门完整教程十
- poj1837
- MVC5+EF6 入门完整教程11--细说MVC中仓储模式的应用