반응형
버블 정렬(Bubble Sort) : 서로 인접한 두 원소를 검사하여 정렬하는 알고리즘
문제 : 9~0까지 배열 을 버블 정렬을 사용하여 오름차순으로 정렬하라!
num = [9,8,7,6,5,4,3,2,1,0] for i in range(0, len(num)-1): if i != len(num)-1: for j in range(i+1, len(num)): if num[i] > num[j]: temp = num[i] num[i] = num[j] num[j] = temp print(num) #결과 [0, 9, 8, 7, 6, 5, 4, 3, 2, 1] [0, 1, 9, 8, 7, 6, 5, 4, 3, 2] [0, 1, 2, 9, 8, 7, 6, 5, 4, 3] [0, 1, 2, 3, 9, 8, 7, 6, 5, 4] [0, 1, 2, 3, 4, 9, 8, 7, 6, 5] [0, 1, 2, 3, 4, 5, 9, 8, 7, 6] [0, 1, 2, 3, 4, 5, 6, 9, 8, 7] [0, 1, 2, 3, 4, 5, 6, 7, 9, 8] [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
코드가 단순하지만, 속도는 느립니다. 하지만 알고리즘 공부하기에 괜찮은 정렬입니다.
728x90
반응형
'Python > Basic' 카테고리의 다른 글
[파이썬] 자료구조 : 재귀함수 & 큐(Queue) & FIFO구조 (2) | 2020.05.02 |
---|---|
[파이썬 기본] Low Pass Filter(저역통과필터), High Pass Filter(고역통과필터), Band Pass Filter(대역통과필터) 모듈화 & 라이브러리화시키기 (4) | 2020.04.21 |
[파이썬] 자료구조 : python(List) 메모리 구조에 대해 파헤치기 (0) | 2020.04.04 |
[파이썬] 자료구조 : 재귀함수 & 스택구조 & LIFO구조 (0) | 2020.03.21 |
[python] List, Dict 를 활용한 면접 문제 연습하기 (0) | 2020.03.17 |