arr = [31, 53, 75, 42, 15, 64, 31]
print("[정렬되지 않은 배열]")
print(arr)
print()
for i in range(len(arr)):
minIndex = i
for j in range(i+1, len(arr)):
if arr[minIndex] > arr[j]:
minIndex = j
arr[i], arr[minIndex] = arr[minIndex], arr[i]
print("[정렬 완료된 배열]")
print(arr)
[정렬되지 않은 배열]
[31, 53, 75, 42, 15, 64, 31]
[정렬 완료된 배열]
[15, 31, 31, 42, 53, 64, 75]
1. 배열 arr[0~n]에서 가장 큰 원소 찾기
2. 이 원소와 배열 끝의 arr[n]은 정렬에서 제외
3. 나머지 원소들도 1 ~ 2 과정 반복
최소값을 배열 앞부분에 채워 넣으면서 진행됨.
알고리즘 중간고사 대비 긴급 백업.
'공부 > 자료 구조 및 알고리즘' 카테고리의 다른 글
삽입정렬 (Insertion Sort) - python (0) | 2022.10.25 |
---|---|
버블정렬 (Bubble Sort) - python (0) | 2022.10.25 |
자료의 정렬 - 합병 정렬(Merge sorting) (0) | 2019.08.04 |
자료의 정렬 - 선택 정렬(Select sorting) (0) | 2019.07.30 |
자료의 정렬 - 버블 정렬(Bubble sorting) (0) | 2019.07.28 |