Problem
Implement a basic calculator to evaluate a simple expression string.
The expression string may contain open ( and closing parentheses ), the plus + or minus sign -, non-negative integers and empty spaces .
Example 1:
Input: "1 + 1" Output: 2
Example 2:
Input: " 2-1 + 2 " Output: 3
Example 3:
Input: "(1+(4+5+2)-3)+(6+8)" Output: 23
Note:
You may assume that the given expression is always valid.
Do not use the eval built-in library function.
class Solution { public int calculate(String s) { s = s.trim().replaceAll(" ", ""); Stackstack = new Stack<>(); int sign = 1, res = 0; System.out.println(s); for (int i = 0; i < s.length(); i++) { char ch = s.charAt(i); if (ch == "+") { sign = 1; } else if (ch == "-") { sign = -1; } else if (ch == "(") { stack.push(res); stack.push(sign); res = 0; sign = 1; } else if (ch == ")") { res *= stack.pop(); res += stack.pop(); } else { int sum = 0; while (i < s.length() && Character.isDigit(s.charAt(i))) { sum = sum*10 + (s.charAt(i)-"0"); i++; } res += sum*sign; i--; } } return res; } }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/77151.html
摘要:復雜度思路將字符串先轉換成后綴表達式,再將其出來。 Leetcode[224] Basic Calculator Implement a basic calculator to evaluate a simple expression string. The expression string may contain open ( and closing parentheses ),...
摘要:題目鏈接,就是感覺條件有點多簡單點的寫法,把直接用存在里面,就存成,存成題目鏈接這題就是碰到在加減后面怎么處理的問題。用一個來表示之前的,所以碰到現在是乘的時候就,除類似。 224. Basic Calculator 題目鏈接:https://leetcode.com/problems... stack,就是感覺條件有點多 public class Solution { pub...
摘要:復雜度思路用兩個來分別記錄當前的結果和操作符注意每一次統計當前的的時候,要看一下下一位的操作符。有一種的方法,是表示的是匹配任意的空白符,包括空格,制表符,換行符,中文全角空格等。也可以用更簡單的方法,。 LeetCode[227] Basic Calculator II Implement a basic calculator to evaluate a simple expres...
Problem Implement a basic calculator to evaluate a simple expression string. The expression string contains only non-negative integers, +, -, *, / operators and empty spaces . The integer division sho...
Problem Implement a basic calculator to evaluate a simple expression string. The expression string may contain open ( and closing parentheses ), the plus + or minus sign -, non-negative integers and e...
閱讀 2789·2021-11-24 09:39
閱讀 2548·2021-11-23 09:51
閱讀 1802·2021-11-17 09:33
閱讀 1737·2021-10-22 09:54
閱讀 1871·2021-08-16 11:00
閱讀 3421·2019-08-30 15:53
閱讀 1733·2019-08-30 13:19
閱讀 2902·2019-08-30 12:49