mirror of
https://gitee.com/coder-xiaomo/leetcode-problemset
synced 2025-01-10 18:48:13 +08:00
40 lines
2.1 KiB
HTML
40 lines
2.1 KiB
HTML
<p>在英语中,我们有一个叫做 <strong>词根</strong>(root) 的概念,可以词根 <strong>后面 </strong>添加其他一些词组成另一个较长的单词——我们称这个词为 <strong>衍生词</strong> (<strong>derivative</strong>)。例如,词根 <code>help</code>,跟随着 <strong>继承</strong>词 <code>"ful"</code>,可以形成新的单词 <code>"helpful"</code>。</p>
|
||
|
||
<p>现在,给定一个由许多 <strong>词根 </strong>组成的词典 <code>dictionary</code> 和一个用空格分隔单词形成的句子 <code>sentence</code>。你需要将句子中的所有 <strong>衍生词 </strong>用 <strong>词根 </strong>替换掉。如果 <strong>衍生词 </strong>有许多可以形成它的 <strong>词根</strong>,则用 <strong>最短 </strong>的 <strong>词根</strong> 替换它。</p>
|
||
|
||
<p>你需要输出替换之后的句子。</p>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>示例 1:</strong></p>
|
||
|
||
<pre>
|
||
<strong>输入:</strong>dictionary = ["cat","bat","rat"], sentence = "the cattle was rattled by the battery"
|
||
<strong>输出:</strong>"the cat was rat by the bat"
|
||
</pre>
|
||
|
||
<p><strong>示例 2:</strong></p>
|
||
|
||
<pre>
|
||
<strong>输入:</strong>dictionary = ["a","b","c"], sentence = "aadsfasf absbs bbab cadsfafs"
|
||
<strong>输出:</strong>"a a b c"
|
||
</pre>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>提示:</strong></p>
|
||
|
||
<ul>
|
||
<li><code>1 <= dictionary.length <= 1000</code></li>
|
||
<li><code>1 <= dictionary[i].length <= 100</code></li>
|
||
<li><code>dictionary[i]</code> 仅由小写字母组成。</li>
|
||
<li><code>1 <= sentence.length <= 10<sup>6</sup></code></li>
|
||
<li><code>sentence</code> 仅由小写字母和空格组成。</li>
|
||
<li><code>sentence</code> 中单词的总量在范围 <code>[1, 1000]</code> 内。</li>
|
||
<li><code>sentence</code> 中每个单词的长度在范围 <code>[1, 1000]</code> 内。</li>
|
||
<li><code>sentence</code> 中单词之间由一个空格隔开。</li>
|
||
<li><code>sentence</code> 没有前导或尾随空格。</li>
|
||
</ul>
|
||
|
||
<p> </p>
|