大数据中如何为运算表达式设计优先级
发表于:2024-11-17 作者:千家信息网编辑
千家信息网最后更新 2024年11月17日,这篇文章主要为大家展示了"大数据中如何为运算表达式设计优先级",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"大数据中如何为运算表达式设计优先级"这篇文章吧。
千家信息网最后更新 2024年11月17日大数据中如何为运算表达式设计优先级
这篇文章主要为大家展示了"大数据中如何为运算表达式设计优先级",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"大数据中如何为运算表达式设计优先级"这篇文章吧。
给定一个含有数字和运算符的字符串,为表达式添加括号,改变其运算优先级以求出不同的结果。你需要给出所有可能的组合的结果。有效的运算符号包含 +, - 以及 * 。
示例 1:
输入:输出:解释:((2-1)-1) = 0(2-(1-1)) = 2
示例 2:
输入: "2*3-4*5"输出: [-34, -14, -10, -10, 10]解释: (2*(3-(4*5))) = -34
答案:
1public List diffWaysToCompute(String input) {
2 List res = new ArrayList();
3 for (int i = 0; i < input.length(); i++) {
4 char c = input.charAt(i);
5 if (c == '-' || c == '+' || c == '*') {
6 String a = input.substring(0, i);
7 String b = input.substring(i + 1);
8 List al = diffWaysToCompute(a);
9 List bl = diffWaysToCompute(b);
10 for (int x : al) {
11 for (int y : bl) {
12 if (c == '-') {
13 res.add(x - y);
14 } else if (c == '+') {
15 res.add(x + y);
16 } else if (c == '*') {
17 res.add(x * y);
18 }
19 }
20 }
21 }
22 }
23 if (res.size() == 0)
24 res.add(Integer.valueOf(input));
25 return res;
26}
解析:
先把字符串截取,然后再根据递归的方式把计算所得到的值进行加减乘操作。注意第23到24行,当分别截取头尾数字的时候,res可能为空,这时需要把input值加入到res集合中。
以上是"大数据中如何为运算表达式设计优先级"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
运算
优先级
表达式
数据
设计
内容
篇文章
字符
字符串
数字
示例
结果
学习
帮助
解释
输入
输出
不同
有效
头尾
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
浙江电力系统软件开发
为什么超级人类显示服务器繁忙
茂名市软件开发
郝斌数据库视频教程
陕西专业软件开发公司
广州天际互联网科技
光云网络技术工作室
苏州手机定位软件开发
公司开展网络安全应急演练
网络安全防范工作原则
法制手抄报网络安全法内容
数据库基础实验小组报告
sip服务器语音网关
软件开发计划书sdp
企业投资服务器得多钱
哪些软件开发支持多平台
服务器性能说明
赛弗网络安全吗
国家标准数据库租用
梦幻2017新开服务器
网络安全环境三个组成部分
自动更新显示无法连接服务器
北境互联网科技
网络安全爆发网宿科技
上海八成互联网科技有限公司
反洗钱道琼斯数据库
学习网络安全需要掌握哪些科目
每年的几月是国家网络安全宣传
下载我的世界服务器
打服务器软件