본문 바로가기

후위 표기식2

[백준] 1918번 후위 표기식 JAVA (자바) 풀이 문제 1918번 : 수식은 일반적으로 3가지 표기법으로 표현 : 연산자가 피연산자 가운데 위치하는 중위 표기법 ( 예: a+b ) 연산자가 피연산자 앞에 위치하는 전위 표기법 ( 예: +ab ) 연산자가 피연산자 뒤에 위치하는 후위 표기법 ( 예: ab+ ) : 후위 표기식 장점은 순서를 적절히 조절하여 순서를 정해줄 수 있어서 괄호 등도 필요 없게 된다 : 중위 표기식을 후위 표기식으로 바꾸는 방법 a+b*c 연산자의 우선순위에 따라 괄호로 묶기 (a+(b*c)) 괄호 안의 연산자를 괄호의 오른쪽으로 옮기기 (a+bc*) 마지막으로 또 +를 괄호의 오른쪽으로 고치기 abc*+ 예시 ) A+B*C-D/E → 결과: ABC*+DE/- [입력] : 첫째 줄에 중위 표기식이 주어진다 : 피연산자는 알파벳 대문.. 2023. 7. 3.
[백준] 1935번 후위 표기식2 JAVA (자바) 풀이 문제 1935번 : 후위 표기식과 각 피연산자에 대응하는 값들이 주어져 있을 때, 그 식을 계산하는 프로그램을 작성 [입력] : 첫째 줄에 피연산자의 개수 : 둘째 줄에는 후위 표기식(=계산식) 여기서 피연산자는 A~Z의 영대문자이며, 길이는 100을 넘지 않는다 : 그리고 셋째 줄부터는 각 피연산자에 값을 순서대로 넣어준다 : 식의 결과와 중간 결과가 -20억보다 크거나 같고, 20억보다 작거나 같은 입력 [출력] : 계산 결과를 소숫점 둘째 자리까지 출력 [스택 연산] push(e) 스택의 맨 위에 요소 e 추가 pop() 스택의 맨 위 요소를 삭제 peek(s) 스택의 맨 위 요소를 삭제하지 않고 반환 top() 스택 맨 위에 있는 데이터 값 반환 isEmpty() 스택에 원소가 없으면 'True'.. 2023. 7. 1.