백준 1935번 : 후위 표기식2
해시맵을 사용하여서 각 피연산자 알파벳을 key, 그 알파벳에 해당하는 정수를 value로 넣어주었다.
후위표기식으로 주어진 문자열의 문자를 차례대로 확인한다.
문자가 피연산자이면 해시맵에서 해당하는 정수값을 찾아서 스택에 넣고,
문자가 연산자이면 스택에서 연산할 값 2개를 pop한 후, 연산 결과를 다시 스택에 push 한다.
연산이 다 끝나고 마지막에 스택에 남아있는 값이 최종 연산 결과가 된다.
연산 결과가 실수이므로 스택에는 정수가 아닌 double형으로 저장해야 한다.
float형이어도 안된다. 연산 결과가 float형 범위를 벗어날 수 있기 때문이다.
소스코드 :
'BOJ' 카테고리의 다른 글
[백준 1969번] DNA (java) (0) | 2021.02.20 |
---|---|
[백준 2841번] 외계인의 기타 연주 (java) (0) | 2021.02.20 |
[백준 17298번] 오큰수 (java) (2) | 2021.02.20 |
[백준 1406번] 에디터 (java) (0) | 2021.02.18 |
[백준 18352번] 특정 거리의 도시 찾기 (java) (0) | 2021.02.18 |