大数据中如何为运算表达式设计优先级
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,这篇文章主要为大家展示了"大数据中如何为运算表达式设计优先级",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"大数据中如何为运算表达式设计优先级"这篇文章吧。
千家信息网最后更新 2026年10月31日大数据中如何为运算表达式设计优先级
这篇文章主要为大家展示了"大数据中如何为运算表达式设计优先级",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"大数据中如何为运算表达式设计优先级"这篇文章吧。
给定一个含有数字和运算符的字符串,为表达式添加括号,改变其运算优先级以求出不同的结果。你需要给出所有可能的组合的结果。有效的运算符号包含 +, - 以及 * 。
示例 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安全错误
数据库的锁怎样保障安全
互联网科技公司起名
互联网最新的科技有限公司
互联网科技金融
北京互联网科技有限公司
朗涯互联网科技
天津摩尔互联网科技
天下捷融互联网科技
国外互联网科技网站
美国互联网前沿科技
联恩商钥互联网科技有限公司
互联网科技股午盘股票涨跌
互联网科技公司需要的职位
南山科技园互联网公司有哪些
河南猎农互联网科技有限公司
昭通互联网科技选哪家
荆州市昕露互联网络科技有限公司
允成互联网科技有限公司融资
合肥互联网科技公司公章图片
唯美互联网科技
上海万顺科技互联网有限公司招聘
互联网巨头反垄断金融科技
互联网科技的
互联网科技开发公司
深圳科技互联网
互联网与未来科技
河南猎农互联网科技有限公司
崇明区互联网教育科技诚信经营
上海钢联属于互联网科技股吗
互联网领先科技宣传片
互联网科技年终奖