DEV Community

Abhishek Chaudhary
Abhishek Chaudhary

Posted on

Largest Number

Given a list of non-negative integers nums, arrange them such that they form the largest number and return it.

Since the result may be very large, so you need to return a string instead of an integer.

Example 1:

Input: nums = [10,2]
Output: "210"

Example 2:

Input: nums = [3,30,34,5,9]
Output: "9534330"

Constraints:

  • 1 <= nums.length <= 100
  • 0 <= nums[i] <= 109

SOLUTION:

from functools import cmp_to_key

class Solution:
    def compare(self, a, b):
        if a + b > b + a:
            return -1
        return 1

    def largestNumber(self, nums: List[int]) -> str:
        return str(int("".join(sorted([str(num) for num in nums], key = cmp_to_key(self.compare)))))
Enter fullscreen mode Exit fullscreen mode

Top comments (0)