bubble sort algo

YOUNGJOO-YOON·2021년 10월 18일
0

알고리즘

목록 보기
5/12

[2, 3, 0, 1]의 경우
이중 for문을 돌면서

내부에서 2, 3을 비교 후 자리 변경 여부를 결정(false) 내부 for문은 값이 1 증가하여 3, 0을 비교 자리를 변경(true) 내부 for문의 값이 올라 3, 1을 비교하여 자리를 변경

외부 for문의 값이 1 올라간다. 이 때 [2, 0, 1, 3]

다시 2, 0을 비교 변경 2, 1을 비교 변경

2, 3을 비교 패스

다시 0, 1을 비교 ...

정렬 끝

내부 for문의 최대값이 i 만큼 줄어도 되는 이유는
이중 for문을 돌면서 한 번 돌아가는 경우 최소 한 번은 정렬이 이루어진다.

즉 오름차순의 경우 맨 처음 정렬의 경우 최소 맨 마지막 배열의 자리는 항상 정렬이 되는 것을 보장한다. 따라서 맨 마지막 자리는 픽스되었으므로 i가 올라간 만큼의 반복은 필요 없게 된다.

profile
이 블로그의 글은 제 생각을 정리한 글과 인터넷 어딘가에서 배운 것을 정리한 글입니다. 출처는 되도록 남기도록 하겠습니다. 수정 및 건의 오류 등이 있으면 언제든지 댓글 부탁드립니다.

0개의 댓글