僅返回 JavaScript 陣列中的奇數


問題

我們需要編寫一個 JavaScript 函式,該函式以一個整數陣列 arr 作為第一個也是唯一的引數。

陣列包含所有偶數和恰好一個奇數,或者包含所有奇數和恰好一個偶數。我們的函式應返回陣列中的這個不同的元素。

例如,如果函式輸入為 −

輸入

const arr = [5, 9, 7, 11, 34, 23, 77];

輸出

const output = 34;

輸出說明

因為該陣列包含所有奇數,但 34 是偶數。

示例

以下是程式碼 −

 實際演示

const arr = [5, 9, 7, 11, 34, 23, 77];
const findDifferent = (arr = []) => {
   let { length: len } = arr, i;
   const evens = [];
   const odds = [];
   let k;
   for (i=0; i<len; i++) {
      if (arr[i] % 2 == 0) {
         evens.push(arr[i]);
      };
      if (Math.abs(arr[i] % 2) == 1) {
         odds.push(arr[i]);
      };
   };
   if (evens.len > odds.len)
      return odds[0];
   else
      return evens[0];
};
console.log(findDifferent(arr));

輸出

34

更新於: 22-Apr-2021

531 次瀏覽

開啟職業生涯

完成課程獲得認證

開始
廣告
© . All rights reserved.