LeetCode Basic Calculator 栈
来源:互联网 发布:淘宝联盟是干什么的 编辑:程序博客网 时间:2024/06/05 12:44
思路:
注意的是,刚开始觉的既然只有加减法,且没有负数,那么括号去掉不就行了。。。
考虑下面的test case:
Input: "2-(5-6)"Output: -9Expected: 3
java code :
public class Solution { public int calculate(String s) { Stack<Integer> stack = new Stack<Integer>(); int number = 0, sign = 1, result = 0; for(int i = 0; i < s.length(); ++i) { char c = s.charAt(i); if(Character.isDigit(c)) { number = 10 * number + (c - '0'); }else if(c == '+') { result += sign * number; sign = 1; number = 0; }else if(c == '-') { result += sign * number; sign = -1; number = 0; }else if(c == '(') { stack.push(result); stack.push(sign); sign = 1; result = 0; }else if(c == ')') { result += sign * number; number = 0; result *= stack.pop(); result += stack.pop(); } } result += sign * number; return result; }}
0 0
- leetcode Basic Calculator 栈
- LeetCode Basic Calculator 栈
- 【LeetCode】Basic Calculator && Basic Calculator II
- LeetCode - Basic Calculator & Basic Calculator II
- Leetcode之Basic Calculator & Basic Calculator II
- LeetCode Basic Calculator II 计算器&栈
- LeetCode 224 Basic Calculator (后缀表达式 栈)
- [leetcode] Basic Calculator
- Basic Calculator - LeetCode 224
- LeetCode Basic Calculator
- leetcode:Basic Calculator
- [leetcode][math] Basic Calculator
- [LeetCode] Basic Calculator
- Leetcode 224: Basic Calculator
- leetcode 224 Basic Calculator
- [LeetCode] Basic Calculator II
- [leetcode] Basic Calculator II
- [Leetcode] Basic Calculator
- jQuery设置控件只读
- Introduction to Algorithm - Summary of Chapter 6 - Heapsort
- 三道期中考试题总结
- 角谷猜想(C程序设计进阶第3周)
- JAVA基础复习03
- LeetCode Basic Calculator 栈
- HDU 4328 Cut the cake(最大子矩阵+悬线法)
- Android-如何将android studio项目上传至github
- 随机数的循环
- 联想k920 系统包版本区别和说明
- ubuntu14.04+cuda6.5+kaldi环境搭建
- acm沈阳站
- SonarQube代码质量平台工具使用和介绍
- session, cookie