写代码效率还是太慢了
public int GetFragment (String str) {
Queue<Integer> list=new LinkedList<>();
Stack<Character> s=new Stack<>();
int i=0,sum=0,out;
for(char c:str.toCharArray()){
if(s.isEmpty()){
s.push(c);
i++;
}else if(!s.isEmpty()&&s.peek()==c){
s.push(c);
i++;
}else if(!s.isEmpty()&&s.peek()!=c){
while(!s.isEmpty()){
s.pop();}
list.add(i);
s.push(c);
i=1; } }
if(!s.isEmpty()){
while(!s.isEmpty()){
s.pop();}
list.add(i); }
int l=list.size();
for(int j=0;j<l;j++){
sum+=list.poll(); }
System.out.println(!str.isEmpty()?sum/l:0);
return !str.isEmpty()?sum/l:0;
}
}
Queue<Integer> list=new LinkedList<>();
Stack<Character> s=new Stack<>();
int i=0,sum=0,out;
for(char c:str.toCharArray()){
if(s.isEmpty()){
s.push(c);
i++;
}else if(!s.isEmpty()&&s.peek()==c){
s.push(c);
i++;
}else if(!s.isEmpty()&&s.peek()!=c){
while(!s.isEmpty()){
s.pop();}
list.add(i);
s.push(c);
i=1; } }
if(!s.isEmpty()){
while(!s.isEmpty()){
s.pop();}
list.add(i); }
int l=list.size();
for(int j=0;j<l;j++){
sum+=list.poll(); }
System.out.println(!str.isEmpty()?sum/l:0);
return !str.isEmpty()?sum/l:0;
}
}
全部评论
相关推荐
03-12 21:53
南昌航空大学 Java 还是想躺平了:那就认清呗,按他们说的读研读博,爆着家里米然后边玩边学,考不上就再考一年反正花的家里钱,等他们被啃得受不了了来怪你,就说当年都要找到工作了被谁搞没了
点赞 评论 收藏
分享
03-17 05:48
南昌大学 Java 点赞 评论 收藏
分享
