1
0
mirror of https://gitee.com/coder-xiaomo/leetcode-problemset synced 2025-09-12 02:41:42 +08:00
Code Issues Projects Releases Wiki Activity GitHub Gitee

存量题库数据更新

This commit is contained in:
2023-12-09 18:42:21 +08:00
parent a788808cd7
commit c198538f10
10843 changed files with 288489 additions and 248355 deletions

View File

@@ -1,49 +1,48 @@
<p>一条基因序列由一个带有8个字符的字符串表示,其中每个字符都属于 <code>"A"</code>, <code>"C"</code>, <code>"G"</code>, <code>"T"</code>中的任意一个</p>
<p>基因序列可以表示为一条由 8 个字符组成的字符串,其中每个字符都 <code>'A'</code><code>'C'</code><code>'G'</code> <code>'T'</code> 之一</p>
<p>假设我们要调查一个基因序列的变化。<strong>一次</strong>基因变化意味着这个基因序列中的<strong>一个</strong>字符发生了变化。</p>
<p>假设我们要调查基因序列&nbsp;<code>start</code> 变为 <code>end</code> 所发生的基因变化。一次基因变化就意味着这个基因序列中的一个字符发生了变化。</p>
<p>例如,基因序列由<code>"AACCGGTT"</code> 变化至 <code>"AACCGGTA" </code>即发生了一次基因变化。</p>
<ul>
<li>例如,<code>"AACCGGTT" --&gt; "AACCGGTA"</code> 就是一次基因变化。</li>
</ul>
<p>与此同时,每一次基因变化的结果,都需要是一个合法的基因串,即该结果属于一个基因库。</p>
<p>另有一个基因库 <code>bank</code> 记录了所有有效的基因变化,只有基因库中的基因才是有效的基因序列。(变化后的基因必须位于基因库 <code>bank</code> 中)</p>
<p>现在给定3个参数 — start, end, bank分别代表起始基因序列目标基因序列及基因库,请找出能够使起始基因序列变化为目标基因序列所需的最少变化次数。如果无法实现目标变化,返回 -1</p>
<p>给你两个基因序列 <code>start</code><code>end</code> ,以及一个基因库 <code>bank</code> ,请找出并返回能够使&nbsp;<code>start</code> 变化为 <code>end</code> 所需的最少变化次数。如果无法完成此基因变化,返回 <code>-1</code> </p>
<p><strong>注意:</strong></p>
<p>注意:起始基因序列&nbsp;<code>start</code> 默认是有效的,但是它并不一定会出现在基因库中。</p>
<ol>
<li>起始基因序列默认是合法的,但是它并不一定会出现在基因库中。</li>
<li>如果一个起始基因序列需要多次变化,那么它每一次变化之后的基因序列都必须是合法的。</li>
<li>假定起始基因序列与目标基因序列是不一样的。</li>
</ol>
<p> </p>
<p>&nbsp;</p>
<p><strong>示例 1</strong></p>
<pre>
start: "AACCGGTT"
end: "AACCGGTA"
bank: ["AACCGGTA"]
返回值: 1
<strong>输入:</strong>start = "AACCGGTT", end = "AACCGGTA", bank = ["AACCGGTA"]
<strong>输出:</strong>1
</pre>
<p><strong>示例 2</strong></p>
<pre>
start: "AACCGGTT"
end: "AAACGGTA"
bank: ["AACCGGTA", "AACCGCTA", "AAACGGTA"]
返回值: 2
<strong>输入:</strong>start = "AACCGGTT", end = "AAACGGTA", bank = ["AACCGGTA","AACCGCTA","AAACGGTA"]
<strong>输出:</strong>2
</pre>
<p><strong>示例 3</strong></p>
<pre>
start: "AAAAACCC"
end: "AACCCCCC"
bank: ["AAAACCCC", "AAACCCCC", "AACCCCCC"]
返回值: 3
<strong>输入:</strong>start = "AAAAACCC", end = "AACCCCCC", bank = ["AAAACCCC","AAACCCCC","AACCCCCC"]
<strong>输出:</strong>3
</pre>
<p>&nbsp;</p>
<p><strong>提示:</strong></p>
<ul>
<li><code>start.length == 8</code></li>
<li><code>end.length == 8</code></li>
<li><code>0 &lt;= bank.length &lt;= 10</code></li>
<li><code>bank[i].length == 8</code></li>
<li><code>start</code><code>end</code><code>bank[i]</code> 仅由字符 <code>['A', 'C', 'G', 'T']</code> 组成</li>
</ul>