本文主要是介绍力扣1047. 删除字符串中的所有相邻重复项,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
思路:消消乐的感觉,就先想到栈;用一个栈存放遍历过的元素,和遍历中的下一个元素相比,相同则出栈,不同则入栈,最终栈内剩余的就是不相同的元素。
class Solution {public String removeDuplicates(String s) {//用一个栈存放遍历过的元素Stack<Character> stack = new Stack();String ans = "";for(char c : s.toCharArray()){//为空时 或 不同元素入栈if(stack.isEmpty() || stack.peek()!=c){stack.push(c);}else{//相同元素出栈stack.pop();}}//整合不相同元素,倒着来while(!stack.isEmpty()) {ans = stack.pop() + ans;}return ans;}
}
这篇关于力扣1047. 删除字符串中的所有相邻重复项的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!