我编写了一个函数getmaxnumber,它接受一个数字,对它的数字进行所有可能的排列,并返回最大的一个。
例如,getmaxnmber(123)应该返回321
除了typescript返回错误:/getmaxnumber.ts(9,21):错误ts7006:参数'nums'隐式地具有'any'类型外,其他所有操作都正常。
非常感谢您的帮助!
以下是我目前的代码:
const getMaxNumber = (inputNum: number) : number => {
let nums = inputNum.toString().split('')
function permute(nums: Array<string>) : Array<Array<string>> {
let result = [];
if (nums.length === 0) return [];
if (nums.length === 1) return [nums];
for (let i = 0; i < nums.length; i++) {
const currentNum = nums[i];
const remainingNums = nums.slice(0, i).concat(nums.slice(i + 1));
const remainingNumsPermuted = permute(remainingNums);
for (let j = 0; j < remainingNumsPermuted.length; j++) {
const permutedArray = [currentNum].concat(remainingNumsPermuted[j]);
result.push(permutedArray);
}
}
return result;
}
let permutations = permute(nums)
return Math.max(...permutations.map(el => +el.join('')));
}
暂无答案!
目前还没有任何答案,快来回答吧!