1. 선택정렬
선택정렬은 가장 왼쪽값을 min으로 저장하고 min의 다음에 있는 모든 값과 비교합니다.
왼쪽부터 정렬됩니다.
-->
inner loop
1 2 3 4 5 1 2 3 4 5 . . .
1과 2 비교 2와 3 비교
1과 3 비교 2와 4 비교
1과 4 비교 2와 5 비교
1과 5 비교
outer loop
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
정렬된(최종위치가 확정된) 값들은 노란색으로 표시했다.
2. 버블정렬
버블 정렬은 두 값을 비교해서 큰 숫자를 오른쪽으로 보냅니다.
오른쪽부터 정렬됩니다.
inner loop
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
outer loop
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
3. 삽입정렬
정렬 중 최종 위치가 확정되는 버블 정렬과 선택 정렬과는 달리
삽입정렬은 정렬이 완료되지 않으면 어떠한 요소의 최종 위치도 결정되지 않습니다.
<--
loop
1 2 3 4 5 2 1 3 4 5 . . .
1 1 3 4 5 2 1 1 4 5
2 1 3 4 5 2 3 1 4 5
2 2 1 4 5
3 2 1 4 5
정렬할 값 하나를 정한다.
그 값을 기준으로 왼쪽값이 작으면 왼쪽값을 정렬할 값의 위치에 저장한다.
저장해놓은 정렬할 값을 왼쪽값 자리에 저장한다.
'대학강의정리 > 22.1 it개론' 카테고리의 다른 글
제6장. 자료구조 그래프 (0) | 2022.05.27 |
---|---|
제6장. 자료구조 stack 과que (0) | 2022.05.25 |
제6장. 자료구조 arrary list 과 linked list (0) | 2022.05.24 |
선택 정렬 (0) | 2022.05.10 |
알고리즘의 조건 (0) | 2022.05.09 |