【題目】
給定乙個字串型別的陣列strs,請找到一種拼接順序,使得將所有的字串拼接起來組成的大寫字串是所有可能性中字典序最小的,返回這個大寫字串。
如:strs = [『abc』,』de』],返回』abcde』
【解】
假設有兩個字串a,b,a和b拼接起來的字串表示為a.b。如果a.b的字典序小於b.a,就把字串a放在前面,否則把字串b放在前面。每兩個字串之間都按照這個標準進行比較,以此標準排序後,再依次串起來的大寫字串就是結果。
def
findsmallest
(strs):
strs.sort(cmp = lambda x,y:cmp(x+y,y+x))
return
''.join(strs)
字串拼接最小字典序
對於乙個給定的字串陣列,請找到一種拼接順序,使所有小字串拼接成的大字串是所有可能的拼接中字典序最小的。給定乙個字串陣列 strs,同時給定它的大小,請返回拼接成的串。貪心策略1 直接字串排序最後拼接起來 b ba 排序的結果就是 b ba 直接連線是bba,但是實際上是bab更小 貪心策略2 定義乙...
字串拼接最小字典
給定乙個字串陣列,找到一種拼接順序,使得所有小字串拼接成的大字串在所有可能的拼接中字典序最小。例如 給定strarr n 2。則有兩種拼接順序bacbd和bdbac,顯然第一種拼接的字典序要小於第二種。我們是否可以這樣認為 如果str1的字典序小於str2的字典序,那麼str1一定就放在前面,也就是...
nowcoder 拼接最小字典序
對於乙個給定的字串陣列,請找到一種拼接順序,使所有小字串拼接成的大字串是所有可能的拼接中字典序最小的。給定乙個字串陣列strs,同時給定它的大小,請返回拼接成的串。測試樣例 abc de 2 abcde 定義比較函式st r1 s tr2 st r2 s tr1 然後自定義快排。class prio...