写代码效率还是太慢了

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()&amp;&amp;s.peek()==c){
                    s.push(c);
                    i++;
          }else if(!s.isEmpty()&amp;&amp;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;
    }
}
全部评论

相关推荐

VirtualBoo...:都去逗他了?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务