该题不在hot 100给定一组非负整数nums重新排列每个数的顺序每个数不可拆分使之组成一个最大的整数。注意输出结果可能非常大所以你需要返回一个字符串而不是整数。不能直接比较大小只能拼接后比较这种更像是一种排序排序后的值为这个数组组成最大的整数。时间复杂度O(nlogn) 空间复杂度O(n)。针对都为0的场景直接返回0.from functools import cmp_to_key class Solution: def largestNumber(self, nums: List[int]) - str: def compare(x, y): s1 str(x) str(y) s2 str(y) str(x) if s1 s2: return -1 elif s1 s2: return 1 else: return 0 nums_sorted sorted(nums, keycmp_to_key(compare)) res .join(str(num) for num in nums_sorted) return 0 if res[0] 0 else res