///////////////////////////////////////////////////////////////////////////////
1. 중위법
((2*3)+(6/2))-4 // 사람들이 흔히 사용하는 수식의 표현
2*3+6/2-4 // 괄호의 생략
2. 후위법
23*62/+4-
///////////////////////////////////////////////////////////////////////////////
ㄱ .중위법을 후위법으로 변화하는 알고리즘 - I
// 전제 : 중위표기법이 반드시 괄호를 포함하고 있어야 한다.
1. '(' 문자는 무시하고 넘어간다.
2. 피연산자는 그대로 출력한다.
3. 연산자는 스택에 푸시한다.
4. ')' 를 만나면 스택에서 팝하여 출력한다.
ㄴ. 중위법을 후위법으로 변화하는 알고리즘 - II
// 괄호가 생략되어 있어도 가능
// 연산자에 고유의 숫자를 주어서 우선순위를 부여한다.
// '(' -> 0
// '+' '-' -> 1
// '*' '/' -> 2
1. '('를 만나면 스택에 푸쉬
2. ')'를 만나면 스택에서 '('가 나올때까지 팝하여 출력 '('는 팝하여 버린다.
3. 연산자를 만나면 스택에 그 연산자보다 낮은 우선순위의 연산자를 만날때까지
팝하여 출력한 위에 자신을 푸시한다.
4. 피연산자는 그냥 출력한다.
5. 모든 입력이 끝나면 스택에 있는 연산자들을 모두 팝하여 출력한다.