题目描述:
给定一个字符串s,最多只能进行一次变换,返回变换后能得到的最小字符串(按照字典序进行比较)。
变换规则:交换字符串中任意两个不同位置的字符。
输入描述:
一串小写字母组成的字符串s
输出描述:
按照要求进行变换得到的最小字符串
备注:
s是都是小写字符组成
1<=s.length<=1000
示例
1.输入:
abcdef
输出:abcdef
说明:
abcdef已经是最小字符串,不需要交换
2.输入:
bcdefa
输出:acdefb
说明:
a和b进行位置交换,可以得到最小字符串
#解题想法:示例很容易写,但突然想到“ababab”这种,该把第二个b跟后面哪个a切换
通过验证“aaabbb”<"aabbab"的正确性(也就等同于数字比较111999<119919),
所以应该从最后一个最小值切换
while 1:
try:
#测试用例: "ababab","abcdef","bcdefa"
s="ababab"
l=list(s)
t=-1
for i in ra