과목 구분 없음9급 국가직 공무원 컴퓨터일반 · 2012년04월07일 · 9/20
9.다음의 중위(infix) 표기식을 후위(postfix) 표기식으로 <조건>을 참고하여 변환하고자 한다. 스택을 이용한 변환 과정 중 토큰 ‘d’가 처리될 순간에 스택에 저장되어 있는 연산자를 올바르게 나타낸 것은?

1
정답
정답2

3

4

해설
[스택 계산기] 1. 피연산자는 바로 출력 2. 연산자의 경우 스택에서 우선순위 계산 후 처리 [스택 우선순위] 1. 자신보다 낮은 우선순위의 연산자가 top이면 push 2. 자신보다 높은 우선순위 연산자가 top이면 자신보다 우선순위가 낮거나 같은 연산자가 나올 떄 까지 pop 3. 닫는 괄호가 나온 경우 여는 괄호까지 pop [문제 해설] 1. c 토큰까지 처리했을 때 스택에는 *((+ 2. ) 토큰이 들어오면 여는 괄호까지 제거하므로 스택에는 *( 3. / 토큰이 들어오면 (는 /보다 우선순위가 높으므로 스택에는 *(/ 따라서 정답은 1번이 된다.