實現乙個基本的計算器來計算乙個簡單的字串表示式的值。
字串表示式可以包含左括號 ( ,右括號 ),加號 + ,減號 -,非負整數和空格 。
示例 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...