跳到主要内容

2734.执行子串操作后的字典序最小字符串

链接:2734.执行子串操作后的字典序最小字符串
难度:Medium
标签:贪心、字符串
简介:返回执行上述操作 恰好一次 后可以获得的 字典序最小 的字符串。

题解 1 - python

  • 编辑时间:2024-06-27
  • 执行用时:162ms
  • 内存消耗:22.7MB
  • 编程语言:python
  • 解法介绍:贪心,找第一个a前面的子串进行更新。
class Solution:
def smallestString(self, s: str) -> str:
arr = list(s)
starti = 0
while starti < len(arr) and arr[starti] == 'a':
starti += 1
if starti == len(arr):
arr[-1] = 'z'
else:
endi = starti + 1
while endi < len(arr) and arr[endi] != 'a': endi += 1
for i in range(starti, endi):
arr[i] = chr(ord(arr[i]) - 1)
return ''.join(arr)