본문 바로가기
  • Jetpack 알아보기
Java & Kotlin/알고리즘

[Java] 정렬 알고리즘 (1) - 선택 정렬 (Selection Sort)

by 새우버거♬ 2021. 5. 23.

선택 정렬 (Selection Sort)


1. 가장 작은 숫자를 가장 앞에 두는 것

2. 반복이 끝났을 때, 최솟값이 맨 앞에 있게 된다.

3. 시간 복잡도 : O(𝑁²)

import java.util.Arrays;

public class SelectionSort {
    int[] array = new int[]{10, 2, 5, 8, 12, 73};

    public void sort() {
        int min, temp, index = 0;

        for (int i = 0; i < array.length; i++) {
            min = 99999;
            for (int j = i; j < array.length; j++) {
                if (min > array[j]) {
                    min = array[j];
                    index = j;
                }
            }
            temp = array[i];
            array[i] = array[index];
            array[index] = temp;
        }

        System.out.println(Arrays.toString(array));
    }
}