摘要:中的運(yùn)算符,運(yùn)算之后要出來(lái),繼續(xù)遍歷數(shù)組。是放入新的數(shù)字,用轉(zhuǎn)換為均可。
Problem
Evaluate the value of an arithmetic expression in Reverse Polish Notation.
Valid operators are +, -, *, /. Each operand may be an integer or another expression.
Example["2", "1", "+", "3", "*"] -> ((2 + 1) * 3) -> 9 ["4", "13", "5", "/", "+"] -> (4 + (13 / 5)) -> 6Note
Switch中的運(yùn)算符case,運(yùn)算之后要break出來(lái),繼續(xù)遍歷tokens數(shù)組。
default是放入新的數(shù)字,用parseInt()/valueOf()轉(zhuǎn)換String為Integer均可。
public class Solution { public int evalRPN(String[] tokens) { if (tokens == null || tokens.length % 2 == 0) return 0; Stackstack = new Stack (); for (String tok: tokens) { switch(tok) { case "+": stack.push(stack.pop() + stack.pop()); break; case "-": stack.push(-stack.pop() + stack.pop()); break; case "*": stack.push(stack.pop() * stack.pop()); break; case "/": int divisor = stack.pop(); int dividend = stack.pop(); stack.push(dividend/divisor); break; default: stack.push(Integer.valueOf(tok)); } } return stack.pop(); } }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/65499.html
摘要:棧法復(fù)雜度時(shí)間空間思路逆波蘭表達(dá)式的計(jì)算十分方便,對(duì)于運(yùn)算符,其運(yùn)算的兩個(gè)數(shù)就是這個(gè)運(yùn)算符前面的兩個(gè)數(shù)。注意對(duì)于減法,先彈出的是減號(hào)后面的數(shù)。 Evaluate Reverse Polish Notation Evaluate the value of an arithmetic expression in Reverse Polish Notation. Valid operato...
Problem Evaluate the value of an arithmetic expression in Reverse Polish Notation. Valid operators are +, -, *, /. Each operand may be an integer or another expression. Note: Division between two inte...
摘要:題目鏈接來(lái)做,保存數(shù)字,碰到符號(hào)的時(shí)候就彈出兩個(gè)數(shù)字計(jì)算算完后再放入,最后里面的就是結(jié)果。 150. Evaluate Reverse Polish Notation 題目鏈接:https://leetcode.com/problems... stack來(lái)做,保存數(shù)字,碰到符號(hào)的時(shí)候就彈出兩個(gè)數(shù)字計(jì)算算完后再放入stack,最后stack里面的就是結(jié)果。 public class So...
摘要:我們一般看到的數(shù)學(xué)表達(dá)式就是中綴表達(dá)式,也就是將符號(hào)放在兩個(gè)數(shù)字之間。后綴表達(dá)式也就是將運(yùn)算符放在相應(yīng)數(shù)字的后面。后綴表達(dá)式相當(dāng)于樹中的后序遍歷。通過(guò)獲得對(duì)應(yīng)位置的操作符。如果對(duì)應(yīng)的還是操作符,則繼續(xù)遞歸往前計(jì)算。 題目要求 Evaluate the value of an arithmetic expression in Reverse Polish Notation. Valid...
摘要:將表達(dá)式轉(zhuǎn)換為逆波蘭式,然后求值轉(zhuǎn)換中綴表達(dá)式為逆波蘭式魯棒性檢測(cè),表達(dá)式中沒(méi)有操作數(shù)計(jì)算逆波蘭式值參考 表達(dá)式類算法題小結(jié) [TOC] 聲明 文章均為本人技術(shù)筆記,轉(zhuǎn)載請(qǐng)注明出處:[1] https://segmentfault.com/u/yzwall[2] blog.csdn.net/j_dark/ 表達(dá)式分類 根據(jù)運(yùn)算符與相關(guān)操作操作數(shù)的位置不同,將表達(dá)式分為前綴,中綴和后綴表...
閱讀 1591·2021-09-26 09:46
閱讀 2678·2021-09-07 09:59
閱讀 2766·2021-09-07 09:59
閱讀 1889·2019-08-30 14:20
閱讀 943·2019-08-26 13:39
閱讀 3186·2019-08-26 12:24
閱讀 782·2019-08-26 11:55
閱讀 1227·2019-08-23 16:49