LeetCode热题100-最大数(179)

该题不在hot 100!

给定一组非负整数 nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数。

**注意:**输出结果可能非常大,所以你需要返回一个字符串而不是整数。

不能直接比较大小只能拼接后比较,这种更像是一种排序,排序后的值为这个数组组成最大的整数。时间复杂度:O(nlogn) ,空间复杂度:O(n)。针对都为0的场景直接返回0.

python 复制代码
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, key=cmp_to_key(compare))
        res = ''.join(str(num) for num in nums_sorted)
        return "0" if res[0] == "0" else res
相关推荐
atunet4 分钟前
关于从哈希冲突看缓存设计的实践与权衡7
算法
GuWenyue9 小时前
传统Agent工具两大痛点!300行代码落地MCP跨语言工具,彻底解耦LLM与工具
前端·人工智能·算法
我叫洋洋10 小时前
C ++ [ hello world ]
c语言·c++·算法
奋发向前wcx11 小时前
y1,y2总复习笔记5 2026.7.19
数据结构·笔记·算法
战族狼魂15 小时前
高频面试题精选:分治与AI Agent架构
人工智能·算法·大模型·大语言模型
李剑一15 小时前
你用过网易的将军令嘛?它底层实现账号保护的原理相当简单粗暴
算法
Scott9999HH15 小时前
告别流量波动玄学!从法拉第电磁定律到底层 C/C++ 流量累积算法,深度解密工业级电磁流量计选型与开发
c语言·c++·算法
中达瑞和-高光谱·多光谱15 小时前
1nm到8nm光谱分辨率,你的应用该选哪款光谱相机?
算法·高光谱·高光谱相机
香辣牛肉饭16 小时前
【算法】动态规划 最长公共子序列(LCS)
经验分享·笔记·算法·动态规划