반응형
파이썬 버블정렬 bubble sort
# 파이썬 버블정렬
# 예) n = 4
# a = 4 2 3 1 입력
# 1) 2 4 3 1 / 4 와 2 자리 바꿈
# 2) 2 3 4 1 / 4 와 3 자리 바꿈
# 3) 2 3 1 4 / 4 와 1 자리 바꿈
# 4) 2 1 3 4 / 3 과 1 자리 바꿈
# 5) 1 2 3 4 / 2 와 1 자리 바꿈
n = int(input()) # 리스트 개수 입력
a = [] * n # n 개수만큼 리스트 생성
for i in range(0, n): # n = 4
a.append(int(input()))
# a = 4 2 3 1 입력 for i in range(n): # n = 4
# i = 0 1 2 3 으로 출력
for j in range(0, n - i - 1):
# n-i-1 = 3 3 3 2 2 1 으로 출력
# j = 0 1 2 0 1 0 으로 출력
if a[j] > a[j + 1]:
a[j], a[j + 1] = a[j + 1], a[j]
# 맨 위 1) ~ 5) 순서로 숫자가 바뀜
# 2, 4 = 4, 2 시작하자 마자 바뀜
# 3, 4 = 4, 3
# 1, 4 = 4, 1
# 1, 3 = 3, 1
# 1, 2 = 2, 1
print(a)
# 1 2 3 4 로 출력
###################### # 아래는 위 설명 지운 코드 n = int(input()) a = [] * n for i in range(0, n): a.append(int(input())) for i in range(n): for j in range(0, n - i - 1): if a[j] > a[j + 1]: a[j], a[j + 1] = a[j + 1], a[j] print(a) |
cs |
반응형
'파이썬 > 알고리즘' 카테고리의 다른 글
파이썬 삽입정렬 insertion sort (0) | 2022.08.01 |
---|---|
파이썬 선택정렬 selection sort (0) | 2022.05.26 |
댓글