문제
다음 중 스택을 이용한 중위 표기식 (A+B)*C-D/E 의 후위 표기식 변환 결과로 가장 옳은 것은?
① AB+CDE/- ② AB+CDE/- ③ ABC+DE/- ④ AB+CD-E/
정답
1번
해설
중위 표기식을 후위 표기식으로 변환할 때 연산자 우선순위와 결합성을 고려해야 한다. (A+B)를 먼저 처리하면 AB+가 되고, 이를 C와 곱하면 AB+C가 된다. 마지막으로 D/E를 처리하면 DE/가 되고, 전체에서 빼면 AB+CDE/-가 된다. 괄호가 있을 때는 괄호 내부를 우선 처리하고, */는 +-보다 우선순위가 높으므로 스택에서 나중에 꺼내진다.