문제
다음 C 코드의 출력 결과는?
① 1 그리고 2 ② 2 그리고 3 ③ 1 그리고 3 ④ 3 그리고 2
정답
2번
해설
정답: 2. 1과 2를 삽입한 뒤 1을 제거하고 3을 삽입한다. 이후 두 번 제거하면 2, 3 순서로 나온다.
오답 풀이
- 1번: 첫 번째 deq로 1이 이미 제거되었다.
- 2번: 큐의 선입선출 순서를 올바르게 추적한 결과이다.
- 3번: 제거된 1을 다시 포함했다.
- 4번: 큐 순서를 후입선출처럼 잘못 계산했다.
보충 개념 원형 큐는 front와 rear를 배열 크기로 나눈 나머지로 갱신한다. deq는 front 위치의 값을 반환한 뒤 front를 증가시킨다.