题目链接:https://www.lintcode.com/problem/largest-number/description
给出一组非负整数,重新排列他们的顺序把他们组成一个最大的整数。
Example
样例 1:
输入:[1, 20, 23, 4, 8]
输出:"8423201"
样例 2:
输入:[4, 6, 65]
输出:"6654"
Challenge
在 O(nlogn) 的时间复杂度内完成。
Notice
最后的结果可能很大,所以我们返回一个字符串来代替这个整数。
思路:主要问题在于排序方式,这里需要采用逐位倒序,按照ASCII 码逐位比较, 比如'3' 比'2'大。 例如s1 123, s2, 133. s1 + s2 = 123133, s2 + s1 = 133123, 那么s2 + s1应该排前面