不用回溯,将给定的数组排序(理论上不用排序On时间复杂度),得到数组中的最大值和最小值。然后从给定数字的个位到高位遍历,直到找到第一个大于数组min的位。如果没有找到,答案就是原数字长度-1个数组最大值的拼接;如果找到了,找到那一位的更高位都不变,找到的那一位变成数组中小于它的最大值,然后比当前低的位用数组里面的最大值max替换即可。