mirror of
https://gitee.com/coder-xiaomo/leetcode-problemset
synced 2025-11-12 15:25:48 +08:00
update
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
<p>给你一个由小写英文字母组成的、长度为 <code>n</code> 的字符串 <code>s</code>。</p>
|
||||
|
||||
<p>你 必须执行 <strong>恰好 </strong>一次操作:选择一个整数 <code>k</code>,满足 <code>1 <= k <= n</code>,然后执行以下两个选项之一:</p>
|
||||
|
||||
<ul>
|
||||
<li>反转 <code>s</code> 的 <strong>前</strong> <code>k</code> 个字符,或</li>
|
||||
<li>反转 <code>s</code> 的 <strong>后</strong> <code>k</code> 个字符。</li>
|
||||
</ul>
|
||||
|
||||
<p>返回在 <strong>恰好</strong> 执行一次此类操作后可以获得的 <strong>字典序最小 </strong>的字符串。</p>
|
||||
|
||||
<p>如果字符串 <code>a</code> 和字符串 <code>b</code> 在第一个不同的位置上,<code>a</code> 中的字母在字母表中比 <code>b</code> 中对应的字母出现得更早,则称字符串 <code>a</code> <strong>字典序小于 </strong>字符串 <code>b</code>。如果前 <code>min(a.length, b.length)</code> 个字符都相同,则较短的字符串字典序较小。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong> <span class="example-io">s = "dcab"</span></p>
|
||||
|
||||
<p><strong>输出:</strong> <span class="example-io">"acdb"</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li>选择 <code>k = 3</code>,反转前 3 个字符。</li>
|
||||
<li>将 <code>"dca"</code> 反转为 <code>"acd"</code>,得到的字符串 <code>s = "acdb"</code>,这是可获得的字典序最小的字符串。</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong> <span class="example-io">s = "abba"</span></p>
|
||||
|
||||
<p><strong>输出:</strong> <span class="example-io">"aabb"</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li>选择 <code>k = 3</code>,反转后 3 个字符。</li>
|
||||
<li>将 <code>"bba"</code> 反转为 <code>"abb"</code>,得到的字符串是 <code>"aabb"</code>,这是可获得的字典序最小的字符串。</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong> <span class="example-io">s = "zxy"</span></p>
|
||||
|
||||
<p><strong>输出:</strong> <span class="example-io">"xzy"</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li>选择 <code>k = 2</code>,反转前 2 个字符。</li>
|
||||
<li>将 <code>"zx"</code> 反转为 <code>"xz"</code>,得到的字符串是 <code>"xzy"</code>,这是可获得的字典序最小的字符串。</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= n == s.length <= 1000</code></li>
|
||||
<li><code>s</code> 由小写英文字母组成。</li>
|
||||
</ul>
|
||||
Reference in New Issue
Block a user