JAVA代码实现计算器功能
使用java代码实现计算器功能,可解决:
224.基本计算器
227.基本计算器II
772.基本计算器III
代码如下
class Solution {public int calculate(String s) {Deque<Character> deque = new LinkedList<>();for(int i = 0; i < s.length(); i++){//入队的时候就把空格排除在外,省的接下来再额外判断if(s.charAt(i) != ' '){deque.addLast(s.charAt(i));}}return helper(deque);}//递归调用,将括号里的当作一个数private int helper(Deque<Character> deque){ Deque<Integer> stack = new LinkedList<>();char sign = '+';int num = 0;while(deque.size() > 0){char c = deque.removeFirst();if(isdigit(c)){num = num * 10 + (c - '0');}if(c == '('){num = helper(deque);}if(!isdigit(c) || deque.size() == 0){if(sign == '+'){stack.addLast(num);}else if(sign == '-'){stack.addLast(-num);}else if(sign == '*'){int pre = stack.removeLast();stack.addLast(pre*num);}else if(sign == '/'){int pre = stack.removeLast();stack.addLast(pre/num);}num = 0;sign = c;}if(c == ')'){break;}}int res = 0;while(stack.size() > 0){int top = stack.removeLast();res += top;}return res;}private boolean isdigit(char c){if(c >= '0' && c <= '9'){return true;}return false;}
}
JAVA代码实现计算器功能相关推荐
- python调用计算器卡死_Python+tkinter使用40行代码实现计算器功能
本文实例为大家分享了40行Python代码实现计算器功能,供大家参考,具体内容如下 偶尔用脚本写点东西也是不错的. 效果图 代码 from tkinter import * reset=True de ...
- JAVA代码实现抽奖功能,自定义奖品以及奖品概率
JAVA代码实现抽奖功能,自定义奖品以及奖品概率 大家好,我是梦辛工作室的灵,最近做了一个抽奖功能,然后自己为了以后方便和拓展 就封装了一下,可以自定义奖品 自定义权重 和 价格等信息,还可以自由设置 ...
- 大数据 java 代码示例_功能Java示例 第7部分–将失败也视为数据
大数据 java 代码示例 这是称为" Functional Java by Example"的系列文章的第7部分. 我在本系列的每个部分中开发的示例是某种"提要处理程序 ...
- 【计算机网络 15】简单几行Java代码实现迅雷功能,java流式编程原理
public static void main(String[] args) throws Exception { //1.创建一个socket连接 Socket socket = new Socke ...
- java屏幕快速截图,java代码实现截图功能(屏幕截图)
代码如下: import java.awt.Dimension; import java.awt.Rectangle; import java.awt.Robot; import java.awt.T ...
- Java代码实现点赞功能
场景 个人搭建的一个美食教程网站,每个美食教程的详细页面有一个点赞按钮,每个用户可以通过点击按钮来点赞与取消点赞,并可以看见当前菜品有多少个赞. 实现思路 因为点赞与取消点赞是一个在页面上用户操作比较 ...
- java简单实现计算器功能
设计一个简单的计算器程序.从键盘输入2个操作数,1个运算符,运算符为加(+).减(-).乘(*).除(/)时,输出计算结果 输入:3 4 + 输出: 7 import java.util ...
- java编写简易计算器_java实现简易计算器功能
本文为大家分享了java实现简易计算器功能,具体内容如下 题目: 编写一个模拟计算器的程序.在面板中添加一个文本框(显示按键及运算结果). 10个数字按钮(0~9).4个运算按钮(加.减.乘.除).一 ...
- eclipse中设置java、xml文件的字体大小以及代码自动提示功能
设置字体大小: 在菜单windows-->prefereces里面,找到General-->Appearance-->Colors and Fonts, 设置xml文件字体大小:找B ...
- java build path entries 为空_TOOLFK工具-在线JAVA代码执行工具
本文要推荐的[TOOLFK]在线JAVA代码执行工具 ,提供JAVA代码在线执行功能. 網站名稱:ToolFk 網站鏈結:https://www.toolfk.com/ 工具链接:https://ww ...
最新文章
- Python-EEG工具库MNE中文教程(5)-机器学习算法随机森林判断睡眠类型
- 产品问答 | PM最应该花时间做这件事……
- 什么叫静态构建版本号码_为什么要使用GatsbyJS构建静态网站
- 及时沟通的重要性_沟通与代码同样重要
- redisb并发访问慢出现的问题
- Spring Boot swagger之前后端分离
- SYSTEM INSTRUCTIONS | 系统指令
- 不可磨灭的记忆 CPU发展史经典回顾
- 学习数学到底有什么用?
- 30. 确保目标空间足够大
- 已知弧长计算器_半径弧长计算软件 弧长弦长求半径计算器
- 土地土壤数据下载网站整理
- Jvm虚拟机下载和安装教程
- AI 视频分析识别系统技术分析
- 阻滞增长模型求解_马尔萨斯与阻滞增长模型对于人口预测的分析
- Java利用POI生成Word、Excel文档转换成PDF,PDF转换成图片
- 我的第一个Imx6ULL应用《百度图像识别》
- 11.什么是Heuristic
- matlab海底地形数据,海底地形建模器
- uva 1395 Silm Span 【MST-Kruskal】
热门文章
- JAVA----流的浅谈之一低级流
- 基于python物流管理系统毕业设计-python实现快递价格查询系统
- safari打不开cookies_从Mac和iOS上的safari阻止cookies的设置方法
- 安卓开发调用python脚本_android开发调用python脚本
- python随机生成电话号码
- [翻译] LaTeX Error: Can be used only in preamble
- spss 描述性分析
- UML 返回消息的虚线箭头 如何画
- homelede软路由设置方法_小米路由器3 5G WiFi设置方法
- 超分辨重建-Bicubic双三次线性插值opencv实现