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)))))

Comments

Popular posts from this blog

Encrypt and Decrypt Strings

Degree of an Array

Minimum Sum of Four Digit Number After Splitting Digits