-
- 서로 인접한 두 요소의 크기를 서로 비교하여 교환
- 맨 앞에서부터 탐색해 가장 큰 수를 맨 뒤로 보낸다.
- 다시 맨 앞에서부터 탐색해 그 다음으로 큰 수를 뒤에서 2번째로 보낸다.
- 위와같은 방법을 반복하여 정렬한다.
- 큰수부터(뒤에서부터) 정렬하는 방법이라고 볼 수 있다.
- 안정성이 있고, 비효율적
- 속도가 느림
< 버블정렬 함수 >def Bubble_Sort(a):N=len(a)for i in range(1, N):for j in range(N-i):if a[j]>a[j+1]:a[j], a[j+1] = a[j+1], a[j]return a< 테스트 >import numpy as npN = int(input('크기를 입력하세요:'))a = np.random.randint(1000, size=N)print('---정렬전---')print(a)print('---정렬후---')print(Bubble_Sort(a))< 재귀로 만든 버블정렬 >def Bubble_Sort2(a):N=len(a)if N==1:return aelse:for i in range(N-1):if a[i]>a[i+1]:a[i], a[i+1] = a[i+1], a[i]return Bubble_Sort2(a[:-1])+a[-1]'코테 공부' 카테고리의 다른 글
프로그래머스 - 단어 변환 (0) 2022.11.07 힙(heap) 알고리즘 (0) 2022.09.28 삽입정렬 (0) 2020.06.09 이진 탐색 (0) 2020.06.02