网站建设方案项目背景意义,建设部精神文明建设网站,免费网站推广网站破解版,珠海制作网站sort 定制排序规则#xff08;配合functools.cmp_to_key()#xff09;
配合例题学习 题目链接#xff1a;179. 最大数 题目大意#xff1a;给定一组非负整数 nums#xff0c;重新排列每个数的顺序#xff08;每个数不可拆分#xff09;使之组成一个最大的整数。 注意配合functools.cmp_to_key()
配合例题学习 题目链接179. 最大数 题目大意给定一组非负整数 nums重新排列每个数的顺序每个数不可拆分使之组成一个最大的整数。 注意输出结果可能非常大所以你需要返回一个字符串而不是整数。 注意11 nums.length 10020 nums[i] 10910^9109。
示例
输入nums [10,2]
输出210输入nums [3,30,34,5,9]
输出9534330
参考代码
class Solution:def largestNumber(self, nums: List[int]) - str:def cmp(x,y):return 1 if xyyx else -1nums list(map(str,nums))nums.sort(keyfunctools.cmp_to_key(cmp))return .join(nums) if nums[0]!0 else 0综合是用来 map容器sort按照制定规则排序。复杂度分析时间上由于是用来sort和functools应该是二阶的即O(n2)O(n^2)O(n2)空间上为O(n)O(n)O(n).