Bubble Sort
arr = [8, 9, 5, 1, 2, 4]
n = len(arr)
for i in range(n - 1, 0, -1):
for j in range(i):
if arr[j] > arr[j + 1]:
arr[j], arr[j + 1] = arr[j + 1], arr[j]
print(arr)
작은 것부터 앞에 고정시키기
arr = [8, 9, 5, 1, 2, 4]
n = len(arr)
for i in range(n - 1):
for j in range(n - 2, i - 1, -1):
if arr[j] > arr[j + 1]:
arr[j], arr[j + 1] = arr[j + 1], arr[j]
print(arr) # [1, 2, 4, 5, 8, 9]
정렬이 되어있다고 판단되면 스킵
arr = [8, 9, 5, 1, 2, 4]
n = len(arr)
for i in range(n - 1, 0, -1):
isChanged = False
for j in range(i):
if arr[j] > arr[j + 1]:
arr[j], arr[j + 1] = arr[j + 1], arr[j]
isChanged = True
if not isChanged:
break
print(arr)