问题:
给定只包含正数的数组,给出一个方法,将数组中的数拼接起来,得到的数,是最大的。如果a[5]={10,110,1110,1,1},则所得的最大数为11111011010.
分析:
首先,我们需要明确的是最后得到的数字,一定是原数组元素的一个排列,比如给定数组为[3, 30, 34, 5, 9],最终所得的最大数字为9534330就可以看成是原数组的一个排列[9, 5, 34, 3, 30]。我们可以通过枚举原数组的所有排列,然后把最大值保存下来,不过这样做的时间复杂度为
问题:
给定只包含正数的数组,给出一个方法,将数组中的数拼接起来,得到的数,是最大的。如果a[5]={10,110,1110,1,1},则所得的最大数为11111011010.
分析:
首先,我们需要明确的是最后得到的数字,一定是原数组元素的一个排列,比如给定数组为[3, 30, 34, 5, 9],最终所得的最大数字为9534330就可以看成是原数组的一个排列[9, 5, 34, 3, 30]。我们可以通过枚举原数组的所有排列,然后把最大值保存下来,不过这样做的时间复杂度为