컴퓨터 Info/Python - 자료구조

Python - 버블정렬

붕짱이 2022. 5. 3.

 

버블정렬

처음값부터 끝까지 인접하는 인덱스의 값을 순차적으로 비교하면서 큰 숫자를 가장 끝으로 옮기는 알고리즘이다.

 

버블정렬 예제
nums = [10, 2, 7, 21, 0]
print(f' nums : {nums}')

length = len(nums) - 1

for i in range(length):
    for j in range(length - i):
        if nums[j] > nums[j+1]:
            nums[j], nums[j+1] = nums[j+1], nums[j]

print(f' sorted nums : {nums}')
내용

첫 인덱스 0번의 값부터 인덱스 값을 1씩 증가시키면서 비교하여 큰 값을 끝으로 보냅니다.

첫 사이클에서 가장 큰 값인 21은 마지막 인덱스로 이동하게 되며

마지막 인덱스는 정렬이 끝났기 때문에 길이에서 정렬 완료된 개수만큼 빼고 다시 처음부터 1씩 증가하며 비교하고 큰 값을 끝으로 보냅니다.

결과
nums : [10, 2, 7, 21, 0]
sorted nums : [0, 2, 7, 10, 21]

 

'컴퓨터 Info > Python - 자료구조' 카테고리의 다른 글

Python - 선택정렬  (0) 2022.05.04
Python - 삽입정렬  (0) 2022.05.04
Python - 순위(Rank)  (0) 2022.05.03
Python - 이진검색  (0) 2022.05.03
Python - 선형검색  (0) 2022.05.02

댓글