多语言展示
当前在线:335今日阅读:100今日分享:18

Java详解如何比较含退格符的字符串

题目:给定 S 和 T 两个字符串,其中包含退格符(# 代表退格字符),编写一个算法,假设将它们输入到空白的文本编辑器中,即让退格符生效,判断二者是否相等,并返回结果。
工具/原料
1

Eclipse

2

JDK1.8

方法/步骤
1

实现一个工具函数,处理包含退格符的字符串:1. 创建一个栈,遍历字符串,并将字符入栈;2. 如果字符为 '#' 即退格符并且栈不空,则弹出栈顶元素,即删除该字符;3. 对于其他字符,全部入栈,最后将栈中内容输出为一个字符串返回。

2

实现算法,算法思想:1. 调用第一步的工具函数,分别处理两个含退格符的字符串;2. 比较上述获取的两个处理后的字符串,是否相等即可。

3

编写本地测试主方法。

4

运行本地测试方法,观察控制台输出,符合预期,本地测试通过。

5

平台提交算法,测试通过。

注意事项

本经验使用 LinkedList 实例作为栈使用,基于链表,无需扩容。

推荐信息