python3 sort 排序 自定义函数 cmp 重写__lt__即可
179. 最大数
难度中等
给定一组非负整数,重新排列它们的顺序使之组成一个最大的整数。
示例 1:
输入:[10,2]
输出:210
示例 2:
输入:[3,30,34,5,9]
输出:9534330
说明: 输出结果可能非常大,所以你需要返回一个字符串而不是整数。
class LargerNumKey(str): def __lt__(x, y): return x+y < y+x class Solution(object): def largestNumber(self, nums): """ :type nums: List[int] :rtype: str """ str_nums = sorted([str(n) for n in nums], key=LargerNumKey, reverse=True) ans = "".join(str_nums) if ans == "0"*len(ans): return "0" return ans