【拼接最小字典序字符串】(python)

来源:互联网 发布:程序员教程 第4版 pdf 编辑:程序博客网 时间:2024/05/18 12:29

【题目】
给定一个字符串类型的数组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)
0 0