본문/내용
1. 선택 정렬
선택 정렬은 간단한 비교 기반 정렬 알고리즘으로, 리스트 내에서 가장 작은 데이터를 찾아서 맨 앞에 위치시키는 과정을 반복하는 방식이다. 이 정렬 방법은 작동 과정이 직관적이기 때문에 이해하기 쉽고 구현이 간편하다. 먼저 리스트의 처음 원소부터 마지막 원소까지 차례로 대상이 되는 최소값을 찾는다. 그 후 찾은 최소값과 리스트의 첫 번째 원소를 교환한다. 이후 두 번째 위치부터 다시 최소값을 찾아서 두 번째 위치와 교환하는 방식으로 진행된다. 이 과정은 리스트의 크기만큼 반복되며, 리스트가 오름차순으로 정렬될 때까지 계속된다. 예를 들어, 리스트가 [29, 10, 14, 37, 13]일 때, 처음에는 전체에서 최소값인 10을 찾아 맨 앞에 위치시킨다. 그 후 두 번째 위치부터 다시 최소값인 13을 찾아 두 번째 위치에 놓는 식이다. 선택 정렬의 시간복잡도는 최악, 평균, 그리고 최선의 경우 모두 O(n^2)로, n이 증가할수록 비교 연산의 수가 제곱수에 따라 크게 늘어난다. 이와 같은 비교 연산의 수는 리스트가 정렬되어 있거나 역순으로 정렬되어 있어도 달라지지 않으며, 이는 선택 정렬이 리스트 순서에 대한 적응력을 갖지 않음을 의미한다.…