BOJ문제 풀이를 통해 후위 표기식 정리하는
일반적으로 사용하는 사칙연산은 피연산자(숫자) 사이에 연산자(+, -, /, *)가 들어가는 형태로 중위표기식(infix expression)’이라고 한다. 그러나 후위표기식은 피연산자가 먼저쓰이고, 그 뒤로 피연산자가 나오는 형태를 말한다. 예를들어, 4+3
의 중위표기식을 후위표기식으로 바꾼다면 43+
으로 표현할 수 있다.
일반적으로 익숙하지 않아서 그렇지, 중위표기식보다 후위표기식은 괄호나 사칙연산의 우선순위를 생각하지 않아 훨씬 직관적이다. 예를들어, 중위표기식에서 4*7+2
라는 연산을 진행할 때, 7+2
를 먼저 연산하고 싶다면, 괄호를 필연적으로 사용해야 한다. 4*(7+2)
하지만 후위표기식으로 표현한다면 472+*
로 표현할 수있다.
왼쪽부터 순차적으로 읽으면 된다.
피연산자(숫자)는 일단 지나치고, 연산자(+, -, *, /)가 나오게 되면, 연산자 앞쪽 두 개의 숫자로 연산을 진행한다.
472+*
+
연산자를 찾고 그 기준으로 앞 쪽 두 개의 피연산자 7, 2
를 더합니다.49*
가 된다.*
연산자를 찾고, 앞의 두 개의 피연산자를 이용하여 연산을 진행한다.36