227 基本計算器 II

2021-09-25 20:14:58 字數 847 閱讀 4614

實現乙個基本的計算器來計算乙個簡單的字串表示式的值。

字串表示式僅包含非負整數,+-*/四種運算子和空格。 整數除法僅保留整數部分。

示例 1:

輸入:"3+2*2"輸出:7
示例 2:

輸入:" 3/2 "輸出:1
示例 3:

輸入:" 3+5 / 2 "輸出:5
說明:

思路:我們用乙個棧來儲存數字,同時記錄數字之前出現的符號,該符號初始化為+(由於字串表示式僅包含非負整數)。

1、當數字前面是+的時候,把數字壓入棧中。

2、當數字前面是-的時候,把數字的相反數壓入棧中。

3、當數字前面是*/的時候,把棧頂元素丟擲,與當前數字做乘法或者除法,再將結果壓入棧中。

class solution 

if(!isdigit(s[i]) && !isspace(s[i])|| i==s.size()-1)

num=0;

op=s[i];}}

while(!st.empty())

return re;

}};

227 基本計算器 II

實現乙個基本的計算器來計算乙個簡單的字串表示式的值。字串表示式僅包含非負整數,四種運算子和空格 整數除法僅保留整數部分。示例 1 輸入 3 2 2 輸出 7 示例 2 輸入 3 2 輸出 1 示例 3 輸入 3 5 2 輸出 5 說明 你可以假設所給定的表示式都是有效的。請不要使用內建的庫函式 ev...

227 基本計算器 II

給你乙個字串表示式 s 請你實現乙個基本計算器來計算並返回它的值。整數除法僅保留整數部分。示例 1 輸入 s 3 2 2 輸出 7 示例 2 輸入 s 3 2 輸出 1 示例 3 輸入 s 3 5 2 輸出 5 昨天的題有括號懶得寫字尾表示式,今天沒有括號啦,那就用把中綴轉成字尾算好了 首先建立乙個...

227 基本計算器 II

給你乙個字串表示式 s 請你實現乙個基本計算器來計算並返回它的值。整數除法僅保留整數部分。輸入 s 3 2 2 輸出 7輸入 s 3 2 輸出 1輸入 s 3 5 2 輸出 5棧,字串 利用正規表示式,首先對字串s利用正規表示式根據 乘,分開,然後 將字串s中的 乘,按順序取出,存放到另外乙個陣列,...