基本计算器II java 算法与数据结构
2022/3/19 12:58:43
本文主要是介绍基本计算器II java 算法与数据结构,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
给你一个字符串表达式 s
,请你实现一个基本计算器来计算并返回它的值。
整数除法仅保留整数部分。
输入:s = "3+2*2" 输出:7
输入:s = " 3/2 " 输出:1
class Solution { public int calculate(String s) { Stack<Integer> stack = new Stack<Integer>(); int num = 0; char ch = '+'; //int res = 0; int sum = 0; int n = s.length(); for(int i = 0; i<n; i++){ if(Character.isDigit(s.charAt(i))){ num = num*10 + (s.charAt(i)-'0'); } if(!Character.isDigit(s.charAt(i))&& s.charAt(i)!= ' '||i==n-1){ switch(ch){ case '+': stack.push(num); break; case '-': stack.push(-num); break; case '*': stack.push(stack.pop()*num); break; case '/': stack.push(stack.pop()/num); break; } num = 0; ch =s.charAt(i); } } int m = stack.size(); for(int i = 0; i<m;i++){ sum += stack.pop(); } return sum; } }
这篇关于基本计算器II java 算法与数据结构的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-01后台管理开发学习:新手入门指南
- 2024-11-01后台管理系统开发学习:新手入门教程
- 2024-11-01后台开发学习:从入门到实践的简单教程
- 2024-11-01后台综合解决方案学习:从入门到初级实战教程
- 2024-11-01接口模块封装学习入门教程
- 2024-11-01请求动作封装学习:新手入门教程
- 2024-11-01登录鉴权入门:新手必读指南
- 2024-11-01动态面包屑入门:轻松掌握导航设计技巧
- 2024-11-01动态权限入门:新手必读指南
- 2024-11-01动态主题处理入门:新手必读指南