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'
相关推荐
Js.Tx8 小时前
【具体数学 Concrete Mathematics】2.1.7 无限和式
算法·具体数学
FPGA信号处理8 小时前
【 凸优化】第六讲:求解器与支持向量机
算法·机器学习·支持向量机
专注仿真8 小时前
支持向量机(SVM)算法详解与代码实例
算法·机器学习·支持向量机
Pniubi9 小时前
力扣42接雨水(动态规划法)
算法·leetcode·职场和发展
CQU_JIAKE9 小时前
10.31[A]
算法·深度优先
zwc32104320559 小时前
Day 5:threshold与inRange阈值分割
c++·图像处理·人工智能·opencv·算法·计算机视觉
云-缩影9 小时前
实际项目中怎么选排序算法:从面试题到工程落地
java·算法·排序算法
Pniubi9 小时前
力扣46全排列(回溯(递归))
算法·leetcode·职场和发展
文丑颜不良啊10 小时前
LeetCode1461~1480题目解析
java·leetcode
m0_6399069418 小时前
Redis入门|五种数据结构、使用场景、持久化RDB&AOF
数据结构·数据库·redis