java希尔排序

来源:互联网 发布:正规赌球软件 编辑:程序博客网 时间:2024/04/30 15:49
package com.zz.sort;import java.util.Random;public class ShellSort {public static void main(String[] args) {//int[] iArraya = new int[]{10,1,8,54,23,51,15};int iLong = 1000;int[] iArrgs = new int[iLong];Random random = new Random(); for(int i = 0; i < iLong; i++) {iArrgs[i] = random.nextInt(iLong);}ShellSort shellSort = new ShellSort();shellSort.shellSort(iArrgs);for(int i = 0; i < iArrgs.length; i++) {System.out.print(iArrgs[i] + " ");}}/** *  * @param iArray */private void shellSort(int[] iArray) {int iLength = iArray.length; //数组长度int d = iLength / 2 ; //步长while(d > 0) { //根据步长调整顺序,当d=1,就排序.//无序for(int i = d; i < iLength; i++) {int temp = iArray[i];int j;//有序for(j = i - d; j >= 0 && iArray[j + d] <  iArray[j]; j = j-d) { //iArray[j + d] = iArray[j];}iArray[j + d] = temp;}d = d  / 2;//缩小一半补偿}}}

原创粉丝点击