描述:

//输入1+2)*3-4)*5-6)))
//输出((1+2)*((3-4)*(5-6)))

代码:

import java.util.*;public class G {public static void main(String[] args) {Scanner sc = new Scanner(System.in);String str = sc.nextLine().trim();String result = getfullstr(str);System.out.println(result);}public static String getfullstr(String str) {Stack<String> lefts = new Stack<>();Stack<String> rights = new Stack<>();char[] chars = str.toCharArray();for (int i = 0; i < chars.length; i++) {char c = chars[i];if (c == '+' || c == '-' || c == '+' || c == '*' || c == '/') {rights.add(c + "");} else if (c == ')') {String lstr1 = lefts.pop();String lstr2 = lefts.pop();String rstr1 = rights.pop();lefts.add("(" + lstr2 + rstr1 + lstr1 + ")");} else if (Character.isDigit(chars[i])) {String num = c + "";while ((i + 1) < chars.length && Character.isDigit(chars[i + 1])) {num += c;i++;}lefts.add(num);}}while (rights.size() > 0) {String lstr1 = lefts.pop();String lstr2 = lefts.pop();String rstr1 = rights.pop();lefts.add("(" + lstr2 + rstr1 + lstr1 + ")");}String result = "";while (lefts.size() > 0) {result = lefts.pop() + result;}return result;}
}

转载于:https://www.cnblogs.com/haimishasha/p/11519417.html

酷狗笔试题:补齐左括号(栈)相关推荐

  1. 2014-百度 阿里 华为笔试题

    8月15日,百度2道面试题: 1.来自<编程之美>的概率题:一个桶里面有白球.黑球各100个,现在按下述规则取球:的     i .每次从通里面拿出来两个球:     ii.如果取出的是两 ...

  2. 最新百度 阿里 华为 腾讯 谷歌面试笔试题及解析

    最新百度 阿里 华为 腾讯 谷歌面试笔试题及解析 8月15日,百度2道面试题: 1.来自<编程之美>的概率题:一个桶里面有白球.黑球各100个,现在按下述规则取球:的 i .每次从通里面拿 ...

  3. 百度 阿里 华为 腾讯 谷歌面试笔试题及解析

    8月15日,百度2道面试题: 1.来自<编程之美>的概率题:一个桶里面有白球.黑球各100个,现在按下述规则取球:的     i .每次从通里面拿出来两个球:     ii.如果取出的是两 ...

  4. 【转】2014百度 阿里 华为 腾讯 谷歌面试笔试题及解析

    原文: http://www.cnblogs.com/JuneWang/p/3773880.html 已知memcpy的函数为: void* memcpy(void *dest , const voi ...

  5. 最新百度 阿里 华为 腾讯 谷歌面试笔试题及解析 (转)

    原文地址:http://m.blog.csdn.net/blog/panfengyun12345/12618453 8月15日,百度2道面试题: 1.来自<编程之美>的概率题:一个桶里面有 ...

  6. 酷狗音乐(繁星网)PHP岗位笔试题

    投了 简历,听朋友说这个岗位对大型网站的架构感兴趣,然后去之前还看了看NoSQL,笔试题大部分都写了,然而却被自己挖的坑栽进去了,暴露了自己的问题,面试官虽然当场说不通过,但是人挺和气,还跟我说以后要 ...

  7. 酷狗java秋招笔试题

    酷狗java秋招笔试题 单选题 1.在命中率极高的缓存设计中,时间复杂度最差的数据结构是( B ). A. 数组 B. 链表 C. 树 D. 哈希表 2.某二叉树共有11个结点,其叶子结点只有2个.则 ...

  8. java 左边补0_java 数字左补齐0

    NumberFormat nf = NumberFormat.getInstance(); //设置是否使用分组 nf.setGroupingUsed(false); //设置最大整数位数 nf.se ...

  9. 2017酷家乐秋招笔试题——后台开发

    楼主,昨天晚上做了酷家乐的笔试题,本来发来说是19:00-21:00两个小时,结果登入考试系统发现倒计时只有一个小时(坑!).不过题量很少,主要是选择题和简答题,简答题有一道是要编程的,当时内心太慌没 ...

最新文章

  1. 活动目录环境下 临时让End user提升权限安装应用软件
  2. python里面temp是啥-Python模块学习:tempfile 临时文件(夹)操作
  3. 前端相对路径 与后端相对路径的区分
  4. Redis 作为缓存服务器的配置
  5. mysql数据库入门教程(10):标识列和事务
  6. 元素上下左右居中的几种方法
  7. 为什么要用Hibernate框架? 把SessionFactory,Session,Transcational封装成包含crud的工具类并且处理了事务,那不是用不着spring了?...
  8. 25.C++- 泛型编程之函数模板(详解)
  9. 小米、QQ等8款手机浏览器发布自查整改公告;AMD宣布收购赛灵思;​TypeScript 4.0.5发布|极客头条
  10. IEqualityComparerT
  11. Python3 从零单排17_类的继承
  12. spark多字段排序与取topN
  13. 用iscsi和DHCP搭建一个windows无盘系统站【笔记】
  14. python随机加减乘除_python实现随机加减法生成器
  15. 【无标题】关于BC25连接电信物联网平台的问题(批量产品在广东连接不到物联网平台,在合肥测试是可以的)
  16. 【苦练基本功】代码整洁之道 pt1(第1章-第3章)
  17. C语言写的一个简单的计算器
  18. 使用python清空文件夹
  19. 你的密码泄露没?触目惊心的密码泄露该如何查防
  20. Matlab常见错误---带有下标的赋值维度不匹配。

热门文章

  1. Linus Torvalds 不担心微软将控制 Linux
  2. php更改tittle,phpcms V9修改默认title标签
  3. python中的update是什么意思_python 字典中的Update()函数
  4. ini文件中文乱码 python_python编程之ini文件处理-configparser模块应用
  5. 各种水龙头拆卸图解_各种水龙头拆卸图解法
  6. php多个逻辑如何分为多个逻辑块,php 项目如何分层
  7. python时间比较好_花了半个月时间,终于找到了一款最适合的python教程
  8. mysql 外键 失败_存在外键时,MySQL 5.5外键约束失败
  9. java 传绝对路径无效_【Java并发005】原理层面:volatile关键字全解析
  10. splunk采集linux日志,splunk日志监控利器