写代码效率还是太慢了

public int GetFragment (String str) {
        Queue list=new LinkedList<>();
        Stack 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                sum+=list.poll();    }
                System.out.println(!str.isEmpty()?sum/l:0);
     return !str.isEmpty()?sum/l:0;
    }
}
全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务