题解 | #点击消除#

点击消除

https://www.nowcoder.com/practice/8d3643ec29654cf8908b5cf3a0479fd5

思路:

1.用栈,但是最总还需要倒序输出

2.用可变长的数组来模拟栈(StringBuilder)

代码:
public static void main(String[]args){
    Scanner in = new Scanner(System.in);
    char[] s= in.next().toCharArray();
    StringBuilder stack = new StringBuilder();
    for(int i = 0;i<s.length;i++){
        char c = s[i];
        if(stack.length()!=0 && stack.charAt(stack.length()-1)==c){
            //出栈
            stack.deleteCharAt(stack.length()-1);
        }else{
            //进栈
            stack.append(c);
        }
    }
    System.out.println(stack.length()==0?0:stack.toString());
}
全部评论

相关推荐

05-14 20:34
门头沟学院 Java
窝补药贝八股:管他们,乱说,反正又不去,直接说680
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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