标签
数组
哈希表
字符串
日期
Oct 28, 2022
剑指 Offer II 063. 替换单词
题目描述
在英语中,有一个叫做
词根(root)
的概念,它可以跟着其他一些词组成另一个较长的单词——我们称这个词为 继承词(successor)
。例如,词根an
,跟随着单词 other
(其他),可以形成新的单词 another
(另一个)。现在,给定一个由许多词根组成的词典和一个句子,需要将句子中的所有
继承词
用词根
替换掉。如果继承词
有许多可以形成它的词根
,则用最短的词根替换它。需要输出替换之后的句子。
示例 1:
示例 2:
示例 3:
示例 4:
示例 5:
题目解析
思路:
- 使用哈希表存储词典,并将句子分为多个单词,遍历该单词数组查看词典中是否包含其词根,包含则替换该单词为词根,不包含则略过
- 最后用StringBuilder拼接最后的句子