Programming/자료구조
[자료구조] 11. 중위(Infix), 전위(Prefix), 후위(Postfix), 수식 표기법
happy_jinsu
2021. 11. 1. 02:19
※ 수식 표기법의 기준은 연산자(Operator)이다.
중위 표기법 (Infix Notation)
▶ 연산자(Operator)가 피연산자(Operand) 중간에 위치.
▷ 예시 : 9+5, G-Y, K*9
▶ 사람들이 일반적으로 계산할 때 사용.
▶ 연산자 우선순위를 고려하여 계산함. ( 괄호 -> 지수 -> 곱셈과 나눗셈 -> 덧셈과 뺄셈 )
▶ 연산 방향 : 왼쪽에서 오른쪽으로.
▶ 문제점 : 괄호가 없으면 계산이 모호해질 수 있으며, 괄호와 연산자 우선순위를 고려해야 하기 때문에 수식 전체를 봐야 한다. 이러한 문제점을 보완하기 위해서 나온 것이 전위 표기법과 후위 표기법이다. 전위, 후위 표기법은 연산자의 우선순위를 고려하지 않아도 되며 괄호를 사용할 필요가 없다. 때문에 계산이 모호해지는 일도 없어지는 장점이 있다.
전위 표기법 (Prefix Notation)
▶ 연산자(Operator)가 피연산자(Operand) 앞에 위치.
▷ 예시 : +95, -GY, *K9
▶ 연산 방향 : 오른쪽에서 왼쪽으로.
후위 표기법 (Postfix Notation; Reverse Polish Notation)
▶ 연산자(Operator)가 피연산자(Operand) 뒤에 위치.
▷ 예시 : 95+, GY-, K9*
▶ 연산 방향 : 왼쪽에서 오른쪽으로.
▶ 중위 표기법을 전위, 후위 표기법으로 바꾸기. (연산 우선순위에 따라 괄호로 묶어주면 쉽다.)
▶ 수식 표기법 구현 방법 수도코드 필기 노트
참고 서적 : <C언어로 쉽게 풀어쓴 자료구조>