LeetCode 844. Backspace String Compare
创始人
2024-06-02 17:00:17
0

LeetCode 844. Backspace String Compare

题目描述

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.

思路 1

设置两个栈stack1和stack2, 一个用来存储字符串 s, 一个用来存储字符串 t, 然后遍历两个栈, 如果两个栈的元素相同, 则返回 true, 否则返回 false.

算法 1

func backspaceCompare(s string, t string) bool {stack1 := sta(s)stack2 := sta(t)fmt.Println(stack1)fmt.Println(stack2)if len(stack1) != len(stack2) {return false}for i := 0; i < len(stack1); i++ {if stack1[i] != stack2[i] {return false}}return true
}func sta(str string) []rune {stack := make([]rune, 0)for _, v := range str {if v != '#' {stack = append(stack, v)} else if len(stack) > 0 {stack = stack[:len(stack)-1]}}return stack
}

思路 2

  1. 首先从后往前遍历字符串, 设置两个指针 ij, 分别指向字符串 st 的末尾, 还有一个back变量记录 # 的个数
  2. 如果遇到 #, 则 back 加 1, 如果遇到字符, 则判断 back 是否大于 0, 如果大于 0, 则 back 减 1, 表示下一个字符被删除了
  3. 如果两个指针指向的字符相同, 则ij继续向前移动, 否则返回false
  4. 如果两个指针都移动到了字符串的开头, 则返回 true

算法2

func backspaceCompare(s string, t string) bool {i, j, back := len(s)-1, len(t)-1, 0for {back = 0for i >= 0 && (back > 0 || s[i] == '#') {if s[i] == '#' {back++} else {back--}i--}back = 0for j >= 0 && (back > 0 || t[j] == '#') {if t[j] == '#' {back++} else {back--}j--}if i >= 0 && j >= 0 && s[i] == t[j] {j--i--} else {break}}return i == -1 && j == -1
}

相关内容

热门资讯

windowsxp非专业版-W... 嘿,朋友们,今天咱们聊聊那个陪伴我们走过青葱岁月的WindowsXP非专业版。这可不是什么高深莫测的...
wwdc苹果全球开发者大会-W... 每年一度的WWDC(苹果全球开发者大会)对我来说,不仅仅是一场科技盛会,它更像是一场情感的狂欢。作为...
寒热错综型胃溃疡中医治疗-寒热... 哎呀,说到这寒热错综型的胃溃疡,真是让人头疼啊!我这胃啊,就像个不听话的小孩,一会儿热得像火炉,一会...
微信积分商城系统-微信积分商城... 嘿,朋友们!今天咱们聊聊微信里的那个小秘密——积分商城!这玩意儿,简直就是我们这些微信迷的小金库啊!...
十字路口监控视频-十字路口的监... 哎呀,说到这个十字路口的监控视频,我这心里就五味杂陈,满满的都是戏啊!每次经过那些装着摄像头的路口,...
extjs textfield... 哎呀呀,说到ExtJS的TextField验证,我就忍不住要激动起来了!这可不仅仅是填个表单那么简单...
linux系统下建立用户命令是... 嘿,大家好!今天咱们来聊聊在Linux系统里怎么给家里添个新成员——新用户。我知道,听到“命令”这个...
呼吸衰竭的定义及分型-呼吸衰竭... 大家好,今天我想和大家聊聊一个可能就在我们身边,但却常常被忽视的健康威胁——呼吸衰竭。这可不是小事,...
全国公安系统网:守护网络安全的... 全国公安系统网就像是我们虚拟世界中的守护神,默默地保护着每一寸网络空间的安全。想象一下,如果没有这些...
上古丢失msvcp140dll... 哎呀,我的天啊!你们能想象到吗?就在昨天,我正准备打开我心爱的游戏,突然间,电脑屏幕上跳出来一个大大...
zencart多用户系统-Ze... 嘿,大家好!今天咱们来聊聊那个让电商世界翻天覆地的ZenCart多用户系统,简直酷到不行!你知道吗,...
win0 输入法-Win0 输... 键盘成了我们表达思想的重要工具。而我与Win0输入法的邂逅,就像是命中注定的一场浪漫。我得承认,一开...
bootx盘暗黑色了-电脑 B... 哎呀,今天真是倒霉透顶了!早上兴冲冲地打开电脑,准备开始一天的工作,结果一开机,那个Bootx盘竟然...
windows10激活去水印-... 哎呀!说到这个Windows10的激活和去水印,我真是有一肚子话要说!你知道吗,每当我打开电脑,看到...
光盘重装系统步骤-重装系统教程... 哎呀,说到重装系统,我这心里就有点小激动!特别是当你看到电脑慢得像蜗牛爬,或者系统崩溃得一塌糊涂,那...
win7 ghost 百度网盘... 嘿,朋友们,今天咱们聊聊那个让人又爱又恨的Win7Ghost镜像,还有它在百度网盘里的那些事儿。你知...
二羊别的产品能用吗-二羊别的产... 嘿,朋友们,今天咱们就来聊聊这个“二羊别”的产品。哎呀,这个名字听起来就有点儿怪怪的,对吧?但你知道...
windows连接linux服... 哎呀,说到这个Windows连Linux服务器的事儿,我可是有点小激动呢!你想想,本来是两个世界的东...
手机免费照片恢复软件:让消失的... 哎呀,是不是有时候手抖一下,不小心就把手机里的珍贵照片给删了?或者手机突然抽风,那些美好回忆就这样消...
redhat 7 32位iso... 哎呀,说到这个RedHat7的32位ISO下载,我简直要抓狂了!你知道吗,我最近在搞一个老项目,电脑...