題目:
最大數:給定一組非負整數,重新排列它們的順序使之組成一個最大的整數。
思路:
根據字符串的特征使用類似冒泡排序的方式來將數組從大到小排序,最后構造結果就好。
程序:
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
