버블 정렬
버블정렬에는 오름차순정렬, 내림차순정렬이 있다.
1. 오름차순은 두개의 수를 비교, 큰 수를 뒤쪽으로 교환.
따라서 가장 큰 값이 리스트의 맨 뒤에 오게 된다
2. 내림차순은 두개의 수를 비교, 작은수를 뒤쪽으로 교환
따라서 가장 작은 값이 리스트의 맨 앞에 오게 된다
---------------------------------------------------
# 방법1
1. 오름차순
def bubbleSort(array):
for i in range(len(array)):
for j in range(len(array)-1-i):
if array[j] > array[j+1]:
temp = array[j]
array[j] = array[j+1]
array[j+1] = temp
print(array)
data = [-2, 45, 0, 11, -9]
bubbleSort(data)
# [-9, -2, 0, 11, 45]
2. 내림차순
def bubbleSort(array):
for i in range(len(array)):
for j in range(len(array)-1-i):
if array[j] < array[j+1]:
temp = array[j+1]
array[j+1] = array[j]
array[j] = temp
print(array)
data = [-2, 45, 0, 11, -9]
bubbleSort(data)
# [45, 11, 0, -2, -9]
---------------------------------------------------
# 방법 2
1. 오름차순
n = [62, 23, 32, 15]
for i in range(len(n)):
for j in range(0,len(n)-i-1):
if n[j] > n[j+1]:
n[j], n[j+1] = n[j+1], n[j]
print(n)
2. 내림차순
n = [62, 23, 32, 15]
for i in range(len(n)):
for j in range(0,len(n)-i-1):
if n[j] < n[j+1]:
n[j+1], n[j] = n[j], n[j+1]
print(n)
출처
https://www.programiz.com/dsa/bubble-sort#:~:text=Bubble%20sort%20is%20a%20sorting,is%20called%20a%20bubble%20sort.