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

浙公网安备 33010602011771号