BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / java / #64588同步于 2020/10/2
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖

Re: 菜鸟求问哪里出错

m995877461
2020/10/2镜像同步14 回复
下面三个if都不满足直接false啊,这样(()}})会被判true
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
B2016212090机器人#1 · 2020/10/2
(个人见解欢迎指正)如果是())这种情况呢,左括号push了,第一个右括号pop了,就已经空了,然后peek也没东西,empty还是成立的。要么报错要么就是错误答案了呀。 我感觉应该是判断到右括号之后的if里面再进行peek的操作,如果不符合直接return false,不需要等for循环了?
y19990108机器人#2 · 2020/10/2
感谢,加了个else{return false},但是()这个会判断出错 【 在 m995877461 (空白) 的大作中提到: 】 : 下面三个if都不满足直接false啊,这样(()}})会被判true
m995877461机器人#3 · 2020/10/2
你把代码贴出来呀.. 【 在 y19990108 (小孩子假笑,成年人假哭) 的大作中提到: 】 : class Solution : { : public boolean isValid(String s) : ...................
y19990108机器人#4 · 2020/10/2
class Solution { public boolean isValid(String s) { int num=s.length(); if(num%2==1) { return false; } Stack sta=new Stack(); for(int i=0;i<num;i++) { char c=s.charAt(i); if(c=='('||c=='['||c=='{') { sta.push(c); } if(c==')'&&!sta.empty()) { if((char)sta.peek()=='(') sta.pop(); else{return false;} } if(c==']'&&!sta.empty()) { if((char)sta.peek()=='[') sta.pop(); else {return false;} } if(c=='}'&&!sta.empty()) { if((char)sta.peek()=='{') sta.pop(); else{return false;} } else{ return false; } } return sta.empty(); } } 【 在 m995877461 (空白) 的大作中提到: 】 : 你把代码贴出来呀..
m995877461机器人#5 · 2020/10/2
if 等于) else if 等于} else if 等于】 else return false 这样加,而且前面if c==(和后面加的只判断一个 【 在 y19990108 (小孩子假笑,成年人假哭) 的大作中提到: 】 : class Solution : { : public boolean isValid(String s) : ...................
y19990108机器人#6 · 2020/10/2
class Solution { public boolean isValid(String s) { int num=s.length(); if(num%2==1) { return false; } Stack sta=new Stack(); for(int i=0;i<num;i++) { char c=s.charAt(i); if(c=='('||c=='['||c=='{') { sta.push(c); } if(c==')') { if(!sta.empty()) { if((char)sta.peek()=='(') sta.pop(); else{return false;} } else {return false;} } if(c==']') { if(!sta.empty()) { if((char)sta.peek()=='[') sta.pop(); else{return false;} } else {return false;} } if(c=='}') { if(!sta.empty()) { if((char)sta.peek()=='{') sta.pop(); else{return false;} } else{return false;} } } return sta.empty(); } }
y19990108机器人#7 · 2020/10/2
终于整出来了我丢,蟹蟹二位哥,问题主要在peek不能在空时候使用,另外我自己考虑情况少了,已经贴上了新整的,但是效率比较低
y19990108机器人#8 · 2020/10/2
谢谢哥 【 在 m995877461 (空白) 的大作中提到: 】 : if 等于) : else if 等于} : else if 等于】 : ...................
officeysk机器人#9 · 2020/10/2
楼主把最新代码贴下? 之前面公司写题写了这个几乎和楼主一样的答案,听楼主说才知道原来是leetcode原题……那应该问题一样,而我和楼主最初答案一样并不能100%全过,也不知道哪错了