反向求和数组 JavaScript


我们需要编写一个函数,即 reverseSum(),它接受两个数字数组,设为 first 和 second,并返回一个新数组,其中包含,

  • 第一个数组的第一个元素和第二个数组的最后一个元素相加作为第一个元素,

  • 第一个数组的第二个元素和第二个数组的倒数第二个元素相加,依此类推。

当任何一个数组在另一个数组用完元素之前用完元素时,我们只需将剩余的所有元素推送到数组中。因此,我们为该函数编写代码如下 −

示例

const first = [23, 5, 7, 2, 34, 7, 8];
const second = [2, 4, 21, 4, 6, 7, 56, 23, 32, 12];
const reverseSum = (first, second) => {
   const sumArray = [];
   let i, j, k;
   for(i = 0, j = second.length - 1, k = 0; i < first.length && j >= 0;
   i++, j--, k++){
      sumArray[k] = first[i] + second[j];
   };
   while(i < first.length){
      sumArray[k] = first[i];
      k++;
      i++;
   };
   while(j >= 0){
      sumArray[k] = second[j];
      k++;
      j--;
   };
   return sumArray;
};
console.log(reverseSum(first, second));

输出

控制台中的输出为 −

[
   35, 37, 30, 58, 41,
   13, 12, 21, 4, 2
]

让我们看看输出如何显示这些数字。例如,上面的 35 是第一个数组的第一个元素和第二个数组的最后一个元素相加作为第一个元素,即 −

 23 (First element of first array)
+12 (Last element of second array)
------
35

更新于: 28-Aug-2020

358 次浏览

开启你的职业生涯

通过完成课程取得认证

入门
广告
© . All rights reserved.