LeetCode - 844. Backspace String Compare(Two Pointers, String, Stack, Simulation)

YAMAMAMO·2022년 11월 21일
0

LeetCode

목록 보기
85/100

문제

Given two strings s and t, return true if they are equal when both are typed into empty text editors. '#' means a backspace character.
Note that after backspacing an empty text, the text will continue empty.

https://leetcode.com/problems/backspace-string-compare/description/

Example 1:

Input: s = "ab#c", t = "ad#c"
Output: true
Explanation: Both s and t become "ac".

Example 2:

Input: s = "ab##", t = "c#d#"
Output: true
Explanation: Both s and t become "".

Example 3:

Input: s = "a#c", t = "b"
Output: false
Explanation: s becomes "c" while t becomes "b".

풀이

class Solution {
    public boolean backspaceCompare(String s, String t) {
        StringBuilder sS = new StringBuilder();
        StringBuilder tS = new StringBuilder();

        for(char c : s.toCharArray()){
            if(c=='#'&&sS.length()>0) sS.deleteCharAt(sS.length()-1);
            else if(c!='#') sS.append(c);
        }
       
        for(char c : t.toCharArray()){
            if(c=='#'&&tS.length()>0) tS.deleteCharAt(tS.length()-1);
            else if(c!='#') tS.append(c);
        }
     

        return sS.toString().equals(tS.toString());

     
    }
}
profile
안드로이드 개발자

0개의 댓글