179. 最大数

  1. [题目链接](179. 最大数 - 力扣(LeetCode))

  2. 解题思路:x拼接y大于y拼接x后,那么x就应该放前面。自定义排序就行了。

    • 还要注意把前导0给去掉
  3. 代码

    class Solution:
    def myCompare(self, x, y):
    # 比较两个字符串拼接后的结果
    if str(x) + str(y) > str(y) + str(x):
    return -1 # x 在 y 前面
    elif str(x) + str(y) < str(y) + str(x):
    return 1 # y 在 x 前面
    else:
    return 0 # 相等
    def largestNumber(self, nums: List[int]) -> str:
    sorted_nums = sorted(nums, key=cmp_to_key(self.myCompare))
    ans = ""
    for num in sorted_nums:
    ans += str(num)
    return ans.lstrip('0') or '0'
posted @   ouyangxx  阅读(3)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示