다음 배열에 대해 아래 알고리즘을 적용하여 정렬하고자 한다. 3번째 for 루프를 수행할 때, 배열 내에서 교환되는 두 값은?
위치 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
배열 | 9 | 21 | 54 | 32 | 77 | 45 | 19 | 83 | 12 | 3 |
Sort(A[], n): // n은 입력배열 A의 크기이다.
for last ← (n – 1) downto 1
A[0 ... last] 중 가장 큰 수 A[k]를 찾는다.
A[k]와 A[last]의 값을 교환한다.- ①3, 54
- ②21, 45
- ③21, 54
- ④32, 77
정답 ①
출처: 인사혁신처 공개 기출(공공데이터포털, 이용허락 제한 없음)