给定 s 和 t 两个字符串,当它们分别被输入到空白的文本编辑器后,如果两者相等,返回 true 。# 代表退格字符。

    注意:如果对空文本输入退格字符,文本继续为空。

    示例 1:

    输入:s = “ab#c”, t = “ad#c”
    输出:true
    解释:s 和 t 都会变成 “ac”。
    示例 2:

    输入:s = “ab##”, t = “c#d#”
    输出:true
    解释:s 和 t 都会变成 “”。
    示例 3:

    输入:s = “a#c”, t = “b”
    输出:false
    解释:s 会变成 “c”,但 t 仍然是 “b”。

    1. /**
    2. * @param {string} s
    3. * @param {string} t
    4. * @return {boolean}
    5. */
    6. var backspaceCompare = function (s, t) {
    7. return realStr(s) === realStr(t)
    8. };
    9. const realStr = (str) => {
    10. const res = []
    11. for (let i = 0; i < str.length; i += 1) {
    12. if (str[i] === '#') {
    13. res.pop()
    14. } else {
    15. res.push(str[i])
    16. }
    17. }
    18. return res.join('') || ''
    19. }

    image.png