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

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM