목차

선택 정렬 (Selection Sort)

주어진 데이터에서 최소값을 찾은 후 그 값을 해당 인덱스와 스왑. 0번부터 차례대로 최소값이 정해지는 방식.

Selection Sort

def selection_sort(data):
    for index in range(len(data) - 1):
        lowest_idx = index
        for selection in range(index + 1, len(data)):
            if data[lowest_idx] > data[selection]:
                lowest_idx = selection
        data[lowest_idx], data[index] = data[index], data[lowest_idx]
    return data
경우복잡도
일반O(n²)
최악n*(n-1)/2
완전 정렬 상태O(n)