◼︎ 9-2 내림차순 삽입 정렬
오름차순 정렬에서 키(key)를 비교하는 부분(a[j] > key)의 부등호를 반대로 하면 내림차순 정렬 프로그램이 됩니다.
◉ 예제 소스 e09-2-isort.py
# 내림차순 삽입 정렬
# 입력: 리스트 a
# 출력: 없음(입력으로 주어진 a가 정렬됨)
def ins_sort(a):
n = len(a)
for i in range(1, n):
key = a[i]
j = i - 1
while j >= 0 and a[j] < key: # 부등호 방향 뒤집기
a[j + 1] = a[j]
j -= 1
a[j + 1] = key
d = [2, 4, 5, 1, 3]
ins_sort(d)
print(d)
◉ 실행 결과
[5, 4, 3, 2, 1]