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 should truncate toward zero.
You may assume that the given expression is always valid.
Some examples:
"3+2*2" = 7 " 3/2 " = 1 " 3+5 / 2 " = 5
Note: Do not use the eval
built-in library function.
和本博客下面连接的题目一模一样,这里再写一遍。
http://yuanhsh.iteye.com/blog/2194524
public int calculate(String s) { String[] arr = s.split("[\\+\\-\\*\\/]"); String[] ops = s.split("\\d+"); int n = arr.length; int[] nums = new int[n]; for(int i=0; i<n; i++) { nums[i] = Integer.parseInt(arr[i].trim()); } for(int i=1; i<n; i++) { char op = ops[i].trim().charAt(0); if(op == '-') { nums[i] = -nums[i]; } else if(op == '*') { nums[i] = nums[i-1]*nums[i]; nums[i-1] = 0; } else if(op == '/') { nums[i] = nums[i-1]/nums[i]; nums[i-1] = 0; } } int sum = 0; for(int num:nums) sum += num; return sum; }
相关推荐
java java_leetcode题解之Basic Calculator II.java
c c语言_leetcode题解之0227_basic_calculator_ii
java java_leetcode题解之Basic Calculator.java
2. leetcode-224-Basic-Calculator.md:这是第224题,基础计算器,要求设计一个程序来解析并执行简单的数学表达式。 3. leetcode-214-Shortest-Palindrome.md:第214题,寻找最短回文串,可能涉及到字符串操作和动态...
c c语言_leetcode题解之0224_basic_calculator
462 | [Minimum Moves to Equal Array Elements II](https://leetcode.com/problems/minimum-moves-to-equal-array-elements-ii/) | [C++](./C++/minimum-moves-to-equal-array-elements-ii.cpp) [Python](./Python/...
在这个场景中,我们关注的是两个与字符串处理相关的LeetCode问题:将整数转化为英文单词(Problem1 - Integer to English Words)以及实现一个基本的计算器(Problem2 - Basic Calculator)。这两个问题都是字符串...
- **Basic Calculator II**:实现一个基本计算器,读取一个表达式并返回计算结果。 本书通过实际编程案例,讲解了各种算法思想和技巧,涵盖了从基础的数据结构(如数组、链表、树)到复杂的问题解决策略(如动态...
本项目“Basic-calculator-interpreter”便是针对这一问题的解决方案,使用Go语言进行编写。 Go语言,又称为Golang,是Google开发的一种静态类型的、编译型的、并发型且具有垃圾回收功能的编程语言。其简洁的语法和...
* Basic Calculator II:给定一个字符串,返回其计算结果。这个题目需要使用数学的思想,将字符串分解成更小的子字符串,并计算其结果。 LeetCode 中有很多关于数组、链表、树、动态规划、回溯算法、贪心算法、数学...
LeetCode ### LeetCode算法 # 标题 解决方案 困难 日期 239 [C ++](./算法/滑动窗口最大值/Source.cpp) 难的 2015年8月5日 ...[C ++](../ Algorithms /使用... [C ++](./ Algorithms / Basic Calculator II / Sour
- **基本计算器II(Basic Calculator II)**: 给定一个字符串表达式,实现一个基本计算器来计算并返回结果。 以上总结仅为部分知识点的简述,对于每一个具体的算法问题,都有其独特的解决思路和技巧,建议深入研究每...
leetcode添加元素使和等于 本项目为Njueers所共享 仓库内容主要为平时刷题的submit、遇到的一些经典题解、coding时所作的笔记等 Basic Knowledge文件夹下为一些基础但相对重要的C++知识点/笔记 Cpp文件夹下主要为...