Computer Science/자료구조
[5.21] 06-3 단순 선택 정렬 straight selection sort
토마토.
2021. 5. 21. 18:05
단순 선택 정렬 알아보기
아직 정렬하지 않은 범위에서 값이 가장 작은 원소를 선택하고
for i in range(n-1)
min
a[i]와 a[min]을 교환
아직 정렬하지 않은 부분의 맨 앞 원소와 교환하는 작업을 반복한다.
왕 풀었다
from typing import MutableSequence
def selection_sort(a:MutableSequence) -> None:
n = len(a)
min = 0
for i in range(n-1):
for j in range(i, n):
if a[j] <= a[min]:
min = j
a[i], a[min] = a[min], a[i]
return a
a = [4, 5, 2, 1, 3]
print(selection_sort(a))
예제 코드
from typing import MutableSequence
def selection_sort(a:MutableSequence) -> None:
n = len(a)
for i in range(n-1):
min = i
for j in range(i+1, n):
if a[j] <= a[min]:
min = j
a[i], a[min] = a[min], a[i]
return a
a = [4, 5, 2, 1, 3]
print(selection_sort(a))