題目:
最大數:給定一組非負整數,重新排列它們的順序使之組成一個最大的整數。
思路:
根據字符串的特征使用類似冒泡排序的方式來將數組從大到小排序,最后構造結果就好。
程序:
class Solution: def largestNumber(self, nums: List[int]) -> str: if not nums: return '' if sum(nums) == 0: return '0' auxiliary = [] auxiliary_first = [] length = len(nums) for index in range(length): auxiliary.append(str(nums[index])) for index1 in range(length): for index2 in range(length - index1 - 1): if auxiliary[index2] + auxiliary[index2 + 1] < auxiliary[index2 + 1] + auxiliary[index2]: auxiliary[index2], auxiliary[index2 + 1] = auxiliary[index2 + 1], auxiliary[index2] result = '' for index3 in range(length): result = result + auxiliary[index3] return result