Largest Numbers 最大数
题目: leetcode 179
给定一组非负整数 nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数。
注意:输出结果可能非常大,所以你需要返回一个字符串而不是整数。
Given a list of non-negative integers nums, arrange them such that they form the largest number.
Note: The result may be very large, so you need to return a string instead of an integer.
思路
要使一个数字最大,每个数位上的数字一定比之后数位上的数字大。当有数字不能拆分的时候, 那么就要以这个数字为整体来做比较。当我们可以比较出来大小得时候,就可以用排序算法将数字排列出来,再通过string
合并起来。
比较方法
1 | int a, b |
排序方法
- 快排Quicksort
- python自带
1
nums.sort(key=cmp_to_key(self.compare), reverse=True)
** 个人笔记, 如有错误请指出。