leetcode 179 最大数
给定一组非负整数,重新排列它们的顺序使之组成一个最大的整数。
示例 1:
输入:[10,2]
输出:210
示例 2:
输入:[3,30,34,5,9]
输出:9534330
说明: 输出结果可能非常大,所以你需要返回一个字符串而不是整数。
解题思路:
和普通的排序不一样的是,不是比较数或者字符串的大小,而是比较拼接后字符串的大小。
python3实现:
from functools import cmp_to_key
def largestNumber(nums):num_to_str = [str(i)for i in nums]num_to_str.sort(key=cmp_to_key(lambda a, b: (int(a + b) > int(b + a)) - (int(a + b) < int(b + a))), reverse=True)return '0' if num_to_str[0] == '0' else ''.join(num_to_str)
python3比python2少了cmp参数,用com_to_key可以完成相应的功能。
from functools import cmp_to_keynums = [1, 3, 2, 4]
nums.sort(key=cmp_to_key(lambda a, b: a - b))
print(nums) # [1, 2, 3, 4]
leetcode 179 最大数相关推荐
- leetcode 179.最大数
leetcode 179.最大数 题干 给定一组非负整数 nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数. 注意:输出结果可能非常大,所以你需要返回一个字符串而不是整数. 示例 ...
- LeetCode 179. 最大数(自定义谓词函数--Lambda表达式--排序)
1. 题目 给定一组非负整数,重新排列它们的顺序使之组成一个最大的整数. 示例 1: 输入: [10,2] 输出: 210示例 2: 输入: [3,30,34,5,9] 输出: 9534330 说明: ...
- leetcode 179. 最大数
给定一组非负整数,重新排列它们的顺序使之组成一个最大的整数. 示例 1: 输入: [10,2] 输出: 210 示例 2: 输入: [3,30,34,5,9] 输出: 9534330 说明: 输出结果 ...
- Leetcode 179. 最大数 解题思路及C++实现
解题思路: 使用C++中的优先队列priority_queue,通过自定义比较函数cmp,来对nums数组进行排序.最后按排序结果,顺序将nums中的数push_back进字符串res中,即得到结果. ...
- leetcode 179. 最大数(排序)
给定一组非负整数 nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数. 注意:输出结果可能非常大,所以你需要返回一个字符串而不是整数. 示例 1: 输入:nums = [10,2] ...
- 【LeetCode】179. 最大数
文章目录 题目[179. 最大数](https://leetcode-cn.com/problems/largest-number/) 解题思路 注意: 步骤: 代码 题目179. 最大数 给定一组非 ...
- 179. 最大数 golang (自定义sort)
179. 最大数 给定一组非负整数,重新排列它们的顺序使之组成一个最大的整数. 示例 1: 输入: [10,2] 输出: 210 示例 2: 输入: [3,30,34,5,9] 输出: 9534330 ...
- [LeetCode]179. Largest Number
[LeetCode]179. Largest Number 题目描述 解题思路 求最大的数,在数组中对于每一位数字数值越大应当越靠前,如:9 > 5,所以9应该在5之前 需要考虑的是对于不同位数 ...
- 179. 最大数 largestNumber
>179. 最大数< >largestNumber< 一.解题思路 1.解法一( Java ) 解法思路:字典序+比较器 首先将 nums 中的数转换成 String 类型,然 ...
最新文章
- Flutter retrofit:only “package“ and “asset“ schemes supported
- java学习(二)--- 变量类型
- 【mybatis】插入操作更新id
- 记录PHP的执行时间
- XML:体验学习的乐趣之XML总结
- DBCC CHECKIDENT 和SET IDENTITY_INSERT table OFF
- 使用abd工具查看安卓设备cpu处理器是32位或64位
- 为什么要选择crm私有化布署?
- mysql数据库压缩_Mysql压缩解决方案
- AspriseOCR图片识别
- 三星新平板 Galaxy Note 10.1全拆解
- 微信对账单--每日定时任务获取昨日微信支付账单
- mule seda 学习二
- UCOSIII系统内部任务
- JavaScript中的LHS和RHS查询
- 卸载鲁大师后 计算机无法启动项,win7电脑鲁大师开机启动项关闭的图文教程
- 浅谈AI算力优化技术
- 畅捷通(chanjet)T+各版本
- Redis下载安装与配置(linux)
- Google I/O 2018:Make Good Things Together
热门文章
- html5创建三次贝塞尔曲线,HTML5 Canvas中使用路径描画二阶、三阶贝塞尔曲线
- 使用css形变实现一个立方体
- 深度学习 | 训练及优化方法
- [C#]SignalR实现扫码登录(B/S,C/S)
- html如何设置打印分页打印出来,网页中如何用 CSS 设置打印分页符
- uni-app 倒计时组件
- STM32F1xx_StdPeriph_Driver——SPI
- android手机内存使用情况分析
- Linux内核写ddr物理地址,DM6437-读写DDR测试过程
- 散列表(开放定址法)