179. 最大数

Problem: 179. 最大数

文章目录

思路

自定义排序,将字符串大的拼接到前面

复杂度

时间复杂度: O ( n l o g n , n ) O(nlogn, n) O(nlogn,n) = O ( n l o g n ) O(nlogn) O(nlogn) 排序和数组字符串化

空间复杂度: O ( n ) O(n) O(n) 字符串列表的空间

Code

Python3 复制代码
import functools

class Solution:
    def largestNumber(self, nums: List[int]) -> str:
        nums = list(map(str, nums))
        
        # 自定义排序关系
        def cmp(a, b):
            if a + b == b + a: # a = b的关系
                return 0
            if a + b > b + a: # a > b的关系
                return 1 
            else: # a < b的关系
                return -1
        nums.sort(key=functools.cmp_to_key(cmp), reverse=True)
        return ''.join(nums) if nums[0] != '0' else '0'
相关推荐
凌波粒20 小时前
LeetCode--491.递增子序列(回溯算法)
数据结构·算法·leetcode
啵啵啵鱼20 小时前
数组---完
算法·排序算法
嘿黑嘿呦20 小时前
chap 8排序
算法·蓝桥杯·排序算法·软件工程
richdata20 小时前
需求预测终极指南:零售商品预测方法、算法与AI实践
人工智能·算法·零售
隔窗听雨眠20 小时前
C语言函数递归从入门到精通(下):性能优化与工程实践
c语言·算法·性能优化
退休倒计时20 小时前
【每日一题】LeetCode 146. LRU 缓存 TypeScript
算法·leetcode·缓存·typescript
珊瑚里的鱼20 小时前
【递归】汉诺塔
算法·深度优先
WL学习笔记21 小时前
单项不带头不循环链表
数据结构·链表
MrZhao40021 小时前
一个最小 Agent 是怎么跑起来的:Agent Loop 与工具使用全链路
算法
Keven_1121 小时前
算法札记:二分
算法·二分