CAFE

자료구조::DS

산술식의 표기 방법

작성자YongSSamA|작성시간12.07.04|조회수209 목록 댓글 0

산술식 X =(((A+B) * (C-D)) / E) + (F*G)를 폴리시 표기법을 이용하여 이진트리로 표현하고 순회방법을 적용하면 다음과 같다.

 

 

Infix 표기법은 수식을 표현하는 일반적인 방식으로 산술식을 <피연산자-연산자-피연산자>로 표현하며, 산술식에서 괄호를 없앤 표기법이다.

infix 표기 : X = A + B * C - D / E + F * G

 

Prefix 표기법은 산술식을 <연산자-피연산자-피연산자>로 표현하여 연산자가 피연산자보다 먼저 나오는 표현방식이다. 산술식에서 연산자 우선순위에 따라 괄호를 먼저 한 후, 모든 연산자를 자신이 속한 왼쪽 괄호 바로 앞으로 이동한 후 괄호를 모두 제거하면 된다.

prefix 표기 : = X + / * + A B - C D E * F G

 

Postfix 표기법은 산술식을 <피연산자-피연산자-연산자>로 표현하여 피연산자 뒤에 연산자가 따라 나오는 표현 방식으로 "역 폴리시(reverse-polish)" 표기법이라고 한다. 산술식에서 연산자 우선순위에 따라 괄호를 먼저 한 후, 모든 연산자를 자신이 속한 바로 오른쪽 괄호의 밖으로 이동한 후 괄호를 없앤 표기법으로 Postfix 표기법의 일반적인 특징은 괄호를 필요로 하지 않는다. 연산자들의 우선순위(operator precedence)가 필요 없다. 스택을 이용하여 계산을 쉽게 할 수 있다.

postfix 표기법 : X A B + C D - * E / F G * + =

다음검색
현재 게시글 추가 기능 열기

댓글

댓글 리스트
맨위로

카페 검색

카페 검색어 입력폼