题解 | #点击消除#

点击消除

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

import java.util.ArrayDeque;
import java.util.Deque;
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner ss =new Scanner(System.in);
       String sss= ss.nextLine();
     Main main =new Main();
     System.out.print(main.removeAdjacentDuplicates(sss));

}
  public String removeAdjacentDuplicates(String s) {
    
       Deque<Character> stack = new ArrayDeque<>();
        
       for(char c : s.toCharArray()){
         if(!stack.isEmpty()&&stack.peek()==c){
            stack.pop();
         }
         else{
            stack.push(c);
         }
       }
       if(stack.isEmpty()){
        return "0";
       }
       

        StringBuilder result = new StringBuilder();
        while (!stack.isEmpty()) {
            result.append(stack.pop());
        }
        
        // 因为我们是从栈中弹出,所以需要反转结果
        return result.reverse().toString();
    }
}

全部评论

相关推荐

群星之怒:不是哥们,你就不好奇瘫痪三十年的老植物人是啥样的吗?
点赞 评论 收藏
分享
03-18 09:45
莆田学院 golang
牛客749342647号:佬,你这个简历模板是哪个,好好看
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务