酷狗笔试题:补齐左括号(栈)
描述:
//输入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
酷狗笔试题:补齐左括号(栈)相关推荐
- 2014-百度 阿里 华为笔试题
8月15日,百度2道面试题: 1.来自<编程之美>的概率题:一个桶里面有白球.黑球各100个,现在按下述规则取球:的 i .每次从通里面拿出来两个球: ii.如果取出的是两 ...
- 最新百度 阿里 华为 腾讯 谷歌面试笔试题及解析
最新百度 阿里 华为 腾讯 谷歌面试笔试题及解析 8月15日,百度2道面试题: 1.来自<编程之美>的概率题:一个桶里面有白球.黑球各100个,现在按下述规则取球:的 i .每次从通里面拿 ...
- 百度 阿里 华为 腾讯 谷歌面试笔试题及解析
8月15日,百度2道面试题: 1.来自<编程之美>的概率题:一个桶里面有白球.黑球各100个,现在按下述规则取球:的 i .每次从通里面拿出来两个球: ii.如果取出的是两 ...
- 【转】2014百度 阿里 华为 腾讯 谷歌面试笔试题及解析
原文: http://www.cnblogs.com/JuneWang/p/3773880.html 已知memcpy的函数为: void* memcpy(void *dest , const voi ...
- 最新百度 阿里 华为 腾讯 谷歌面试笔试题及解析 (转)
原文地址:http://m.blog.csdn.net/blog/panfengyun12345/12618453 8月15日,百度2道面试题: 1.来自<编程之美>的概率题:一个桶里面有 ...
- 酷狗音乐(繁星网)PHP岗位笔试题
投了 简历,听朋友说这个岗位对大型网站的架构感兴趣,然后去之前还看了看NoSQL,笔试题大部分都写了,然而却被自己挖的坑栽进去了,暴露了自己的问题,面试官虽然当场说不通过,但是人挺和气,还跟我说以后要 ...
- 酷狗java秋招笔试题
酷狗java秋招笔试题 单选题 1.在命中率极高的缓存设计中,时间复杂度最差的数据结构是( B ). A. 数组 B. 链表 C. 树 D. 哈希表 2.某二叉树共有11个结点,其叶子结点只有2个.则 ...
- java 左边补0_java 数字左补齐0
NumberFormat nf = NumberFormat.getInstance(); //设置是否使用分组 nf.setGroupingUsed(false); //设置最大整数位数 nf.se ...
- 2017酷家乐秋招笔试题——后台开发
楼主,昨天晚上做了酷家乐的笔试题,本来发来说是19:00-21:00两个小时,结果登入考试系统发现倒计时只有一个小时(坑!).不过题量很少,主要是选择题和简答题,简答题有一道是要编程的,当时内心太慌没 ...
最新文章
- 活动目录环境下 临时让End user提升权限安装应用软件
- python里面temp是啥-Python模块学习:tempfile 临时文件(夹)操作
- 前端相对路径 与后端相对路径的区分
- Redis 作为缓存服务器的配置
- mysql数据库入门教程(10):标识列和事务
- 元素上下左右居中的几种方法
- 为什么要用Hibernate框架? 把SessionFactory,Session,Transcational封装成包含crud的工具类并且处理了事务,那不是用不着spring了?...
- 25.C++- 泛型编程之函数模板(详解)
- 小米、QQ等8款手机浏览器发布自查整改公告;AMD宣布收购赛灵思;​TypeScript 4.0.5发布|极客头条
- IEqualityComparerT
- Python3 从零单排17_类的继承
- spark多字段排序与取topN
- 用iscsi和DHCP搭建一个windows无盘系统站【笔记】
- python随机加减乘除_python实现随机加减法生成器
- 【无标题】关于BC25连接电信物联网平台的问题(批量产品在广东连接不到物联网平台,在合肥测试是可以的)
- 【苦练基本功】代码整洁之道 pt1(第1章-第3章)
- C语言写的一个简单的计算器
- 使用python清空文件夹
- 你的密码泄露没?触目惊心的密码泄露该如何查防
- Matlab常见错误---带有下标的赋值维度不匹配。
热门文章
- Linus Torvalds 不担心微软将控制 Linux
- php更改tittle,phpcms V9修改默认title标签
- python中的update是什么意思_python 字典中的Update()函数
- ini文件中文乱码 python_python编程之ini文件处理-configparser模块应用
- 各种水龙头拆卸图解_各种水龙头拆卸图解法
- php多个逻辑如何分为多个逻辑块,php 项目如何分层
- python时间比较好_花了半个月时间,终于找到了一款最适合的python教程
- mysql 外键 失败_存在外键时,MySQL 5.5外键约束失败
- java 传绝对路径无效_【Java并发005】原理层面:volatile关键字全解析
- splunk采集linux日志,splunk日志监控利器