선택정렬

CS/Data Structure & algorithm

선택 정렬(Selection Sort)

코딩테스트 스터디를 하면서, 정리해두면 좋을 자료구조나 알고리즘 등을 정리해두려 한다. 선택정렬이란? 배열을 처음부터 끝까지 탐색하며, 가장 작은 요소를 선택해 앞에 위치한 값과 교체를 하는 과정을 가진 알고리즘으로, 이 과정이 반복되면서 전체 배열이 오름차순으로 정렬된다. 특징 - 선택 정렬은 제자리 정렬(in-place sort) 알고리즘으로 추가적인 메모리 공간을 거의 필요로 하지 않아, 메모리가 매우 제한적인 환경에서 유용하고 한다. - 선택 정렬은 입력 데이터가 어떤 상태든 상관없이 항상 동일한 시간복잡도(O(n^2))를 가진다. 따라서, 데이터가 이미 부분적으로 정렬되어 있는 경우나 정렬 방향(오름차순, 내림차순)에 관계없이 항상 동일한 성능을 보여준다. - 선택 정렬은 정렬 과정에서 데이터 ..