연산자의 위치에 따라
전위, 중위, 후위 표기법
전위 표기법 = 연산자가 앞에 있다.
중위 표기법 = 연산자가 중간에 있다.
후위 표기법 = 연산자가 뒤에 있다.
우리가 일반적으로 사용하는 중위 표기법
연산자가 가운데 위치
2+2
후위 표기법으로 변경
22+
<예제1> (1+2)*3 을 후위 표기법으로 나타내기
((1+2)*3) 괄호 순서대로 후위 표기법으로 작성
12+3*1+2를 먼저 계산 : 숫자 쓰고 12, 우측으로 연산자 + (12+) 그리고, 남은 *3도 숫자 쓰고, 우측으로 연산자 (3*) 결과적으로 12+3*
<예제2> 1+2*3 을 후위 표기법으로 나타내기
(1+(2*3))
23* 먼저 풀고 남은 1+는 가까운 괄호 우측으로
123*+
예제2번을 풀고 혼란스러워서 후위 표기법에 대해 찾아보았다.
Stack을 이용하면 쉽게 이해가 된다!
여는 괄호는 스택에 그냥 추가한다.
여는 괄호 다음에 오는 연산자는 그냥 스택에 추가한다.
닫는 괄호는 여는 괄호가 나올 때까지 스택을 pop 하여 출력한다. 다 출력하고 난 뒤 괄호들은 버린다.
⭐ ①②③④⑤⑥⑦⑧⑨ 규칙에 따라 풀이하기 ⭐
<예제3> 1+2*3+4/5를 후위 표기법으로 나타내기
123*+45/+
<예제4> (3+5*(4-6)/2)를 후위 표기법으로 나타내기
3546-*2/+
<예제5> 3546-*2/+를 계산하기
결과 : -2
느낀점