[알고리즘] 버블 정렬 (Python)
·
Pro Developer/BaekJoon(DataStructure & Algorithm)
Do it! 알고리즘 코딩테스트: 파이썬 편과 자료구조 과목 학습 후 정리한 포스팅 입니다. 이번 포스팅에서는 버블 정렬에 대해 학습합니다. I) 버블 정렬 이론 버블 정렬은 데이터의 인접 요소끼리 비교하고, swap 연산을 수행하며 정렬하는 방식이다.시간 복잡도는 O(n^2)으로 다른 정렬 알고리즘보다 느리다 loop를 돌면서 인접한 데이터 간의 swap 연산으로 정렬한다. -> loop를 1번 돌 때 1개의 위치가 결정된다.특정 loop 전체에서 swap이 1번도 발생하지 않았다면 데이터가 모두 정렬되었다는 뜻으로 프로세스를 종료해도 된다. 예를들어 보자면 크기가 4인 배열이 다음과 있다고 하자 1회차: 가장 큰 수 10이 정렬된다. 정렬횟수 3회 2회차: 두번째 큰 수 6이 정렬된다. 정렬횟수 2회..