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)