LeetCode One Question of the Day (44) 844. Compare cadenas con retroceso

844. Comparar cadenas con retroceso


Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí


class Solution {
    
    
public:
    // 遍历两个字符串,将其都变成最终结果的形式在做比较
    bool backspaceCompare(string S, string T) {
    
    
        char s[201],t[201];
        int a=0,b=0;
        for(int i=0;S[i]!='\0';i++){
    
    
            if(S[i]=='#'){
    
    
                if(a>0) a--;
            }else{
    
    
                s[a]=S[i];
                a++;
            }
        }

        for(int i=0;T[i]!='\0';i++){
    
    
            if(T[i]=='#'){
    
    
                if(b>0) b--;
            }else{
    
    
                t[b]=T[i];
                b++;
            }
        }

        if(a!=b) return false;
        for(int i=0;i<a;i++){
    
    
            if(t[i]!=s[i]) return false;
        }
        return true;

    }
};

Inserte la descripción de la imagen aquí


class Solution {
    
    
public:
    // 遍历两个字符串,将其都变成最终结果的形式在做比较
    bool backspaceCompare(string S, string T) {
    
    
        string s="";
        string t="";
        for(int i=0;i<S.size();i++){
    
    
            if(S[i]=='#'){
    
    
                if(s!="") s.pop_back();
            }else{
    
    
                s.push_back(S[i]);
            }
        }

        for(int i=0;i<T.size();i++){
    
    
            if(T[i]=='#'){
    
    
                if(t!="") t.pop_back();
            }else{
    
    
                t.push_back(T[i]);
            }
        }
        if(s==t) return true;
        else return false;
    }
};

Inserte la descripción de la imagen aquí


Supongo que te gusta

Origin blog.csdn.net/qq_45021180/article/details/109163641
Recomendado
Clasificación