classSolution: defmaximumSwap(self, num): s = list(str(num)) length = len(s) if length < 2: return num
for i in range(length - 1): max_index = i for j in range(i + 1, length): if s[j] >= s[max_index] and s[i] != s[j]: max_index = j if max_index != i: temp = s[i] s[i] = s[max_index] s[max_index] = temp break
classSolution: defmaximumSwap(self, num): s = list(str(num)) length = len(s) if length < 2: return num
pre = 0 post = 0 max_index = length - 1 for i in range(length - 1, -1, -1): if s[i] > s[max_index]: max_index = i elif s[i] < s[max_index]: pre = i post = max_index