JZX轻语:简
LeetCode 3216 - 交换后字典序最小的字符串
发表于2024年08月07日
直接贪心地从左到右找到第一个相邻的、具有相同的奇偶性、且第二个字符比第一个字符小的字符对,然后交换这两个字符即可。
class Solution:
def getSmallestString(self, s: str) -> str:
for i in range(len(s) - 1):
a, b = int(s[i]), int(s[i + 1])
if a % 2 == b % 2 and a > b:
return f'{s[:i]}{s[i + 1]}{s[i]}{s[i + 2:]}'
return s