출처: https://commons.wikimedia.org/wiki/File:Insertion-sort-example.gif
for index in range(10, 1, -1):
print (index)
10
9
8
7
6
5
4
3
2
알고리즘 연습 방법에 기반해서 단계별로 생각해봅니다.
데이터가 두개 일때 동작하는 삽입 정렬 알고리즘을 함수로 만들어보세요
프로그래밍 근육을 키우는 방법
데이터가 세개 일때 동작하는 선택 정렬 알고리즘을 함수로 만들어보세요
프로그래밍 근육을 키우는 방법
def insertion_sort(data):
for index in range(len(data) - 1):
for index2 in range(index + 1, 0, -1):
if data[index2] < data[index2 - 1]:
data[index2], data[index2 - 1] = data[index2 - 1], data[index2]
else:
break
return data
import random
data_list = random.sample(range(100), 50)
print (insertion_sort(data_list))
[1, 2, 3, 5, 8, 9, 10, 11, 14, 16, 17, 20, 22, 23, 32, 33, 34, 36, 40, 43, 46, 47, 49, 50, 51, 53, 56, 57, 60, 61, 62, 64, 65, 67, 68, 71, 72, 74, 75, 81, 82, 83, 85, 86, 89, 90, 91, 93, 96, 99]