데이터 구조 정렬 알고리즘 (정렬 부 자바 코드 직접 삽입)

1212 단어
삽입 정렬:
1) 정렬 을 직접 삽입:
이해: n 개의 수 를 정렬 해 야 한다 고 가정 하면 첫 번 째 수 는 정렬 되 었 고 나머지 n - 1 개의 수 는 정렬 되 지 않 았 습 니 다. 지금 은 남 은 n - 1 개의 수 를 하나씩 적당 한 위 치 를 찾 아 삽입 해 야 합 니 다.
첫 번 째 정렬 끝: 정렬 된 숫자 를 얻 은 개 수 는 2 이 고 나머지 n - 2 개의 숫자 를 더 합 니 다.
예 를 들 어 정렬 대기 서열 (49, 38, 65, 97, 76, 13, 27, 49), 첫 번 째 정렬 종료 (38 49 65 97 76 13 27 49 )
정렬 을 직접 삽입 하여 자바 코드 를 다음 과 같이 구현 합 니 다.
private static void ZSort(int a[]) {
        // TODO Auto-generated method stub
        /*
         *                   ,  n-1     ,        
         *      ,  n-1  
         *      ,      ,  break
         */
        for (int i = 1; i < a.length; ++i) {
            int temp = a[i];
            int j = i - 1;
            for (; j >= 0; j--) {

                if (temp < a[j]) {
                    a[j + 1] = a[j];
                } else {
                    break;
                }
            }
            a[j + 1] = temp;
        }
    }

    public static void main(String[] args) {
        int a[] = { 49, 38, 65, 97, 76, 13, 27, 49 };
        ZSort(a);
        for (int i : a) {
            System.out.print(i + " ");
        }
    }

(지적 을 환영 합 니 다! 다른 알고리즘 을 업데이트 합 니 다)

좋은 웹페이지 즐겨찾기