首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
课程
专栏·文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
小黄圆圆
获赞
12
粉丝
4
关注
14
看过 TA
53
男
西安科技大学
2024
Java
IP属地:陕西
未来可期
私信
关注
拉黑
举报
举报
确定要拉黑小黄圆圆吗?
发布(4)
刷题
小黄圆圆
2023-01-09 19:58
西安科技大学 计算机类
题解 | #二叉树遍历#
import java.util.Scanner; class TreeNode{ char val; TreeNode left; TreeNode right; public TreeNode(char val){ this.val = val; } } public class Main { static int i = 0; // 用于遍历字符串 public static void main(String[] args) { Scanner in = new Scanner(Syste...
0
点赞
评论
收藏
转发
小黄圆圆
2022-10-30 13:20
已编辑
西安科技大学 计算机类
题解 | #表达式求值#
1 思路如下 通过一个index索引值来 遍历算式表达式; 使用两个栈来模拟。一个为数字栈,一个为符号栈; 如果为数字,则入数字栈; 如果为符号,则分以下情况: 4.1 符号栈为空:直接入符号栈; 4.2 符号栈不为空:将当前符号与符号栈中的栈顶元素进行优先级比较。 如果当前操作符号优先级小于栈顶元素,则取出符号栈的栈顶元素,并从数字栈取出两个数进行运算,得到数字结果入数字栈,并将当前操作符入符号栈。如果当前的操作符的优先级大于符号栈栈顶元素,则直接入符号栈。 当表达式扫描完毕,则顺序从数字栈和符号栈取出对应的数字和符号进行计算,将结果继续存入数字栈,直到符号栈为空; ...
0
点赞
评论
收藏
转发
小黄圆圆
2022-10-30 10:14
西安科技大学 计算机类
题解 | #点击消除#
1 思路分析 因为每次消除的是相邻且相同的字符,所以我们考虑引入辅助栈stack:遍历字符串,每次遇到与栈顶相同的字符就栈顶元素出栈,栈为空或者当前字符与栈顶元素不等,就入栈 step 1:栈为空或者当前字符与栈顶元素不等,就当前元素入栈 step 2:遍历字符串,每次遇到与栈顶相同的字符就栈顶元素出栈 step 3:输出结果,栈空说明最终是空串,直接输出0 step 4:如果不是空串就再引入StringBuffer将结果拼接成一个字符串 step 5:此时StringBuffer存储的是答案的逆序,需要再reverse反转即为正确答案 2 完整代码 import java.util.Sc...
0
点赞
评论
收藏
转发
小黄圆圆
2022-10-30 09:34
已编辑
西安科技大学 计算机类
题解 | #逆波兰表达式求值#
1 思路分析利用辅助栈解决:遍历字符串数组tokens;遇到的为数字,则直接入栈;遇到的为符号,则依次出栈两个数字,分别记为num1和num2,计算num2(运算符)num1,并将计算结果压栈;重复步骤2、3,直到字符串遍历完成;此时,栈顶元素即为表达式的结果。在遍历字符串的时候需要判断表达式是数字还是符号,可以考虑利用正则表达式进行匹配,下面的语句则匹配是否为正负整数:tokens[i].matches("[-]{0,1}\\d+"); 当然,也可以遍历每个字符数组的元素,均为String类型,对其进行toCharArray操作,依次判断大小,如果大小大于1,则为数字(这个方法属于投机取巧了...
0
点赞
评论
收藏
转发
1
工具箱
TA的圈子
暂未加入圈子
TA的圈子
TA的笔记
暂无笔记
TA的笔记
登录
0
天
已登录
0
天
连续登录
0
人
今日访客
牛客网
牛客企业服务