在 JavaScript 中构建数组中最大的数字


我们需要编写一个 JavaScript 函数,该函数以一个数字数组作为第一个也是唯一的参数。

该函数应用将数组中的数字连接起来,形成可以用这些给定数字组成的最大的可能的数字。

例如 -

如果输入数组为 -

const arr = [5, 45, 34, 9, 3];

则输出应为 -

const output = '9545343';

示例

代码如下 -

const arr = [5, 45, 34, 9, 3];
const largestNumber = (arr = []) => {
   if(arr.every( n => n === 0)){
      return '0';
   }
   arr.sort((a, b) => {
      const s1 = new String(a);
      const s2 = new String(b);
      const first = s1 + s2;
      const second = s2 + s1;
      if(first > second){
         return -1;
      }else if(first < second){
         return 1;
      };
      return 0;
   });
   return arr.join('');
};
console.log(largestNumber(arr));

输出

控制台输出如下 -

9545343

更新于:2021-01-18

471 次浏览

职业生涯开启您的

完成课程获得认证

开始
广告
© . All rights reserved.