尧图网络科技YAOTU DIGITAL 获取报价
获取报价
首页 / 资讯中心 / 文章详情

千问 LeetCode 179. 最大数 Java实现

发布时间:2026/9/29 15:04:22

资讯中心
01
ARTICLE

千问 LeetCode 179. 最大数 Java实现

千问    LeetCode 179. 最大数 Java实现
题目分析LeetCode 179. 最大数给定一组非负整数 nums重新排列每个数的顺序每个数不可拆分使之组成一个最大的整数。注意 输出结果可能非常大所以你需要返回一个字符串而不是整数。示例输入nums [10, 2]输出“210”输入nums [3, 30, 34, 5, 9]输出“9534330”输入nums [0, 0]输出“0”不能返回 “00”核心思路这道题的本质是自定义排序。对于两个数字 a 和 b如何决定谁应该排在前面如果拼接 ab ba则 a 应该排在 b 前面如果拼接 ab “59” → “9” 排在前面“5” vs “34”“534” “345” → “5” 排在前面“3” vs “30”“330” “303” → “3” 排在前面“3” vs “34”“334” “12112”所以必须通过拼接比较而不是单纯字典序。面试延伸如果面试官追问可以补充说明为什么比较 s1s2 和 s2s1 就能保证正确性 这本质上是在模拟两个数字在最终结果中的相对位置确保局部最优能推导到全局最优。严格的数学证明需要用到排序的传递性。如果数字非常大怎么办 题目已经要求返回字符串Java 中 String 可以处理任意长度无需担心溢出。能不能用快排手写实现 可以但面试中直接用 Arrays.sort 更简洁重点在于自定义比较器的逻辑。时间复杂度中的 k 是什么 k 是数字的平均位数。如果所有数字都在 [0, 10⁹] 范围内k ≤ 10可以视为常数时间复杂度近似 O(n log n)。这道题的自定义排序思想在面试中非常经典和把数组排成最小的数剑指 Offer 45是同一道题的变形需要我顺带整理一下这类排序题的通用套路吗
02
RELATED NEWS

相关资讯

更多网站建设与数字化升级内容

03
WHY YAOTU

想打造同款高转化官网?

懂行业、懂生意,从建站到增长一站式陪跑

◈

场景化定制

不做模板站,围绕你的业务场景量身设计,小众不撞款。

◐

营销型架构

以转化目标组织内容与路径,让官网真正带来询盘。

▲

全周期服务

设计、开发、运营、运维一体,上线只是开始。

免费获取你的建站方案

留下需求,专属顾问 24 小时内为你输出方案建议。