def bubble(lst):
    for i in range(len(lst)-1):
        if lst[i] > lst[i+1]:
            lst[i], lst[i+1] = lst[i+1], lst[i]
	

a = [3, 1, 5, 9, 7, 10]
bubble(a)
print(a)
	

# Bubble Sort
# 서로 인접한 두 원소의 대소를 비교해가면서 자리를 교환해 정렬하는 방식
# 시간복잡도: O(n^2)
# 공간복잡도: n
# 장점: 구현이 쉽다. memory가 추가로 들지 않는다(in-place). 중복된 값들이 있을 경우 원래 순서를 보장한다(stable).
# 단점: 정렬이 되어 있건 안 되어 있건 무조건 비교 연산을 수행하기 때문에 수행시간이 무조건 n^2이다.

'CS > 알고리즘' 카테고리의 다른 글

Insertion Sort in Python (삽입 정렬)  (0) 2020.06.09
크루스칼 알고리즘 (Python)  (0) 2020.05.07
프림 알고리즘 (Python)  (0) 2020.05.07
Call by Value vs Call by Reference  (0) 2020.04.28
Selection Sort (선택 정렬)  (0) 2020.04.24

+ Recent posts