[Python 자료구조] 중위표기법, 후위표기법

MINJI·2024년 10월 2일
post-thumbnail

⭐ 중위표기법 vs 후위표기법

1. 중위표기법이란?

  • 연산자가 피연산자들의 사이에 위치

2. 후위표기법이란?

  • 연산자가 피연산자들의 뒤에 위치
[중위] (A+B)*(C+D)
[후위] AB+cd+*
[중위] (A+(B-C))*D
[후위] ABC-+D*
[중위] A*(B-(C+D))
[후위] ABCD+-*

⭐ 알고리즘의 설계

중위 표현식을 왼쪽부터 한 글자씩 읽어서

  • 피연산자이면 그냥 출력
  • ‘(’ 이면 스택에 push
  • ‘)’ 이면 ‘(’ 이 나올 때까지 스택에서 pop
  • 연산자이면 스택에서 이보다 높거나 같은 우선순위 것들을 pop
  • 그리고 이 연산자는 스택에 push
  • 스택이 비어있을때까지 pop

0개의 댓글