在 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.