LeetCode 基本計算器

2021-09-11 18:42:36 字數 925 閱讀 7122

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

字串表示式可以包含左括號 ( ,右括號 ),加號 + ,減號 -,非負整數和空格 。

示例 1:

輸入: "1 + 1"

輸出: 2

示例 2:

輸入: " 2-1 + 2 "

輸出: 3

示例 3:

輸入: "(1+(4+5+2)-3)+(6+8)"

輸出: 23

說明:

你可以假設所給定的表示式都是有效的。

請不要使用內建的庫函式 eval。

思路分析:這種模擬計算器的題目難度不大,但是需要將邏輯理順,思路要清晰,分好各種情況進行不同的處理。

class solution 

} int calculate(string s)

else if (s[index] == '(' || s[index] == '+' || s[index] == '-')

else if (s[index] == ')')

}else

datastack.push(numread);

//如果操作符棧頂不是左括號

LeetCode 基本計算器II

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

leetcode 基本計算器II

按照兩個棧的思路去匯入數字和數學操作,然後根據先乘除後加減的法則,找到第乙個運算元和第二運算元即可。具體 如下 class solution def calculate self,s str int string for char in s if char string char nums oper...

leetcode 224 基本計算器

題目 基本計算器 實現乙個基本的計算器來計算乙個簡單的字串表示式的值。字串表示式可以包含左括號 右括號 加號 減號 非負整數和空格 示例1 輸入 1 1 輸出 2 示例2 輸入 2 1 2 輸出 3 示例3 輸入 1 4 5 2 3 6 8 輸出 23 說明 c include include cl...