查詢在 JavaScript 中可以被某個數字整除的陣列中的成對元素


我們需要編寫一個 JavaScript 函式,它以陣列的數字列表作為第一個引數(將其稱作 arr),並以單個數字作為第二個引數(將其稱作 num)。

這個函式應該在陣列中找到所有成對元素,其中 −

arr[i] + arr[j] = num, and
i < j

例如 −

如果是輸入陣列和數字 −

const arr = [1, 2, 3, 4, 5, 6];
const num = 4;

那麼輸出應該為 −

const output = [
   [1, 3], [2, 6], [3, 5]
];

示例

此程式碼為 −

 演示

const arr = [1, 2, 3, 4, 5, 6];
const num = 4;
const divisibleSumPairs = (arr = [], num) => {
   const res = [];
   const { length } = arr;
   for(let i = 0; i < length; i++){
      for(let j = i + 1; j < length; j++){
         const sum = arr[i] + arr[j];
         if(sum % num === 0){
            res.push([arr[i], arr[j]]);
         }
      }
   }
   return res;
};
console.log(divisibleSumPairs(arr, num));

輸出

控制檯中的輸出將為 −

[ [ 1, 3 ], [ 2, 6 ], [ 3, 5 ] ]

更新於: 2021 年 2 月 24 日

248 次瀏覽

開啟您的 職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.