使用typescript的排列

yh2wf1be  于 2021-09-29  发布在  Java
关注(0)|答案(0)|浏览(254)

我编写了一个函数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('')));
}

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题