Python Insert Sort

Python 삽입 정렬

Featured image

** 삽입 정렬 **

삽입 정렬(insertion sort) 알고리즘의 구체적인 개념

삽입정렬

def insertSort(list):
    length = len(list)
    i = 0
    j = 0
    temp = 0
    key = 0

    for i in range(1, length):
        key = list[i]
        # j가 정방향 일 경우
        # for j in range(0, i):
        #     if list[(i-1)-j] > key:
        #         temp = list[(i-1)-j]
        #         list[(i-1)-j] = key
        #         list[i-j] = temp

        # j가 역방향 일 경우
        for j in range(i-1, -2, -1):
            if (list[j] > key and j >= 0):
                list[j+1] = list[j]
            else:
                break
        list[j+1] = key

    return list

list = [1, 9, 7, 8, 6, 5, 2, 4, 3, 0]
list = insertSort(list)
print(list)