题目:
给定 s 和 t 两个字符串,当它们分别被输入到空白的文本编辑器后,如果两者相等,返回 true 。# 代表退格字符。
注意: 如果对空文本输入退格字符,文本继续为空。
算法:
func backspaceCompare(s string, t string) bool {
stackS := make([]byte, 0)
stackT := make([]byte, 0)
for i := range s {
if s[i] == '#' {
if len(stackS) > 0 {
stackS = stackS[:len(stackS) - 1]
}
} else {
stackS = append(stackS, s[i])
}
}
for i := range t {
if t[i] == '#' {
if len(stackT) > 0 {
stackT = stackT[:len(stackT) - 1]
}
} else {
stackT = append(stackT, t[i])
}
}
return string(stackS) == string(stackT)
}