💡 Straight Selection Sort ( 단순 선택 정렬 )
단순 선택 정렬은 가장 작은 원소부터 선택해 알맞은 위치로 옮기는 작업을 반복하며 정렬하는 알고리즘이다.
💡 설명
가장 작은 원소 1과 4 의 위치를 변경
두 번째 작은 원소 2와 6의 위치를 변경 하며 정렬
💡 코드
def selectSort(arr):
size = len(arr)
for i in range(size - 1):
min_idx = i
for j in range(i + 1, size):
print ('i=', i, 'j=',j, arr)
if arr[j] < arr[min_idx]:
min_idx = j
arr[i], arr[min_idx] = arr[min_idx], arr[i]
return arr
arr = [2, 1, 3]
result = selectSort(arr)
print (result)
마지막의 경우 자동으로 정렬 되므로 첫 번째 for loop 에서 -1 을 해준다.
💡 과정
[Python 자료구조] 단순 삽입 정렬 ( straight insertion sort ) (0) | 2022.03.17 |
---|---|
[Python 자료구조] 버블 정렬 (bubble sort) (0) | 2022.02.21 |
[Python 하노이 탑] 하노이 탑 (0) | 2022.02.13 |
[Python 자료구조] Circular Queue (링버퍼 큐) (0) | 2022.02.11 |
[Python 자료구조] 해시 법 + (오픈 주소 법) (0) | 2022.02.11 |