描述
給你乙個字串表示式s
,請你實現乙個基本計算器來計算並返回它的值。
注意:不允許使用任何將字串作為數學表示式計算的內建函式,比如eval()
。
1 <= s.length <= 3 * 105
s 由數字、'+'、'-'、'('、')'、和 ' ' 組成
s 表示乙個有效的表示式
'+' 不能用作一元運算(例如, "+1" 和 "+(2 + 3)" 無效)
'-' 可以用作一元運算(即 "-1" 和 "-(2 + 3)" 是有效的)
輸入中不存在兩個連續的操作符
每個數字和執行的計算將適合於乙個有符號的 32位 整數
思路棧存臨時結果和符號
**
classsolution
res = res + sign *cur;
}else
if (ch == '+')
else
if (ch == '-')
else
if (ch == '(')
else
if (ch == ')')
}return
res;
}}
基本計算器
輸入表示式字串,以 表示結束,計算並輸出表示式值。運算元可以是正負整數或實數,操作符有 乘方 和 sin 正弦 cos 余弦 log 對數 ln 自然對數 等函式。inttransfer charc void push in stack char op s,vector string res,cha...
基本計算器
實現乙個基本的計算器來計算乙個簡單的字串表示式的值。字串表示式可以包含左括號 右括號 加號 減號 非負整數和空格 示例 1 示例2 示例 3 我的媽呀這個題提交了n次終於通過了。沒有想到特殊情況比如輸入是這種 33 或者 33 或者1 33 設定兩個棧,乙個資料棧儲存資料,乙個符號棧儲存符號。當符號...
基本計算器
給你乙個字串表示式 s,請你實現乙個基本計算器來計算並返回它的值。整數除法僅保留整數部分。示例 1 輸入 s 3 2 2 輸出 7示例 2 輸入 s 3 2 輸出 1示例 3 輸入 s 3 5 2 輸出 51 s.length 3 105 s 由整數和算符 組成,中間由一些空格隔開 s 表示乙個 有...