본문 바로가기
Dev/Java

8. 정렬 알고리즘(Sort Algorithm)

by vellahw 2022. 8. 8.
//[?] 무작위 데이터를 순서대로 [오름차순|내림차순] 정렬

/**
 * 정렬 알고리즘: 가장 [작은|큰] 데이터를 왼쪽으로 순서대로 이동
 */

public class SortAlgorithm2 {
    public static void main(String[] args) {
        int[] data = { 3, 2, 1, 5, 4 };
        int N = data.length; // 의사코드(슈도코드) 형태로 알고리즘을 표현하기 위함

        for (int i = 0; i < N - 1; i++) {  // 선택 정렬 코드의 기본 형태
            for (int j = i + 1; j < N; j++) {  // 선택 정렬 코드의 기본 형태
                if(data[i] > data[j]) {
                    int temp = data[i];   //a
                    data[i] = data[j];    //b
                    data[j] = temp;   //c (a~c: 오름차순 해주는 구간)
                }
            }
        }
        
        for (int i = 0; i < N; i++) {
            System.out.print(data[i] + "\t");  // \t: 수평 탭
        }
        System.out.println();
    }
}

댓글