arr = [7, 5, 9, 0, 3, 1, 6, 2, 4, 8]
for i in range(1, len(arr)):
for j in range(i, 0, -1): #(start, end, step)
if arr[j] < arr[j -1]: # 한 칸씩 왼쪽으로 이동
arr[j], arr[j -1] = arr[j -1], arr[j]
else: # 자기보다 작은 데이터를 만나면 그 위치에서 멈춤
break
삽입 정렬의 시간 복잡도
삽입 정렬의 시간 복잡도는 O(N²)이며, 선택 정렬과 마찬가지로 반복문이 두 번 중첩되어 사용됩니다.
댓글 영역