用栈比较含退格的字符串

在这里插入图片描述

class Solution {
    
    
    public boolean backspaceCompare(String S, String T) {
    
    
        Stack<Character> sstack=new Stack<>();
         Stack<Character> tstack=new Stack<>();
         char c;
         for(int i=0;i<S.length();i++){
    
    
             c=S.charAt(i);
           if(c!='#')  sstack.push(c);
             else  if(!sstack.empty())  {
    
    
                 sstack.pop();
             }
         }

          for(int i=0;i<T.length();i++){
    
    
             c=T.charAt(i);
             if(c!='#')  tstack.push(c);
             else  if(!tstack.empty())  {
    
    
                 tstack.pop();
             }
         }

         while(!sstack.empty()&&!tstack.empty()){
    
    
             if(sstack.pop()!=tstack.pop()) return false;
         }
         if(sstack.empty()&&tstack.empty()) return true;
         else return false;

        
    }
}

猜你喜欢

转载自blog.csdn.net/changbaishannefu/article/details/115180379