8 대 정렬 - 정렬 삽입 [셸 정렬]

셸 정렬 정책:
1. 먼저 하위 시퀀스 에 정렬 을 직접 삽입 합 니 다.전체 서열 이 기본적으로 질서 가 있 으 면 2. 전체 서열 에 정렬 을 직접 삽입 합 니 다.
h 를 사용 하여 정렬 을 한 후에 모든 간격 이 h 인 요 소 는 정렬 되 었 습 니 다. 이 때 는 h 정렬 이 라 고 합 니 다.
코드:
package ch02;
import util.ArrayUtil;
//    ;                          ;
public class ShellSort {
    //           
    public static void doShellSort(int[] array){          //gap       
        /     
        for(int gap=array.length/2;gap>0;gap/=2){
        //n-gap    
            for(int i=gap;iint tmp = array[i];
                int j;
                for(j=i;j>=gap&&tmppublic static void main(String[] args) {
//      int[] array = new int[]{2,8,6,4,3,9,1};
        int[] array = new int[]{58,46,72,95,84,25,37,58,63,12};
        ArrayUtil.display(array);
        //      a[i]    ;         
        doShellSort(array);
        ArrayUtil.display(array);
    }
}

좋은 웹페이지 즐겨찾기