在JavaScript中计算数组中可能的等差数列

王林
王林 转载
2023-08-23 14:42:46 349浏览

在JavaScript中计算数组中可能的等差数列

等差数列

等差数列(AP)是一种数列,其任意两个数之差相等 连续的数字是一个常数值(也称为公差)。

例如,1、2、3、4、5、6...是一个等差数列,其公差等于1(2-1)。

问题

我们需要编写一个JavaScript函数,将一个整数数组arr作为第一个参数传入 并且唯一的参数。

我们函数的任务是返回大小为3的等差数列的数量 可能从那个列表中选择。在每个进程中,元素之间的差异必须是 相同。我们保证输入的数组将按照递增顺序排序。例如,如果 函数的输入为

例如,如果函数的输入为 −

输入

const arr = [1, 2, 3, 5, 7, 9];

输出

const output = 5;

输出解释

因为所需的AP是 −

[1, 2, 3], [1, 3, 5], [1, 5, 9], [3, 5, 7] and [5, 7, 9]

示例

以下是代码 −

实时演示

const arr = [1, 2, 3, 5, 7, 9];
const countAP = (arr = []) => {
   let i, j, k;
   let { length: len } = arr;
   let count = 0;
   for (i = 0; i < len - 2; i++){
      for (k = i + 2; k < len; k++){
         let temp = arr[i] + arr[k];
         let div = temp / 2;
         if ((div * 2) == temp){
            for (j = i + 1; j < k; j++){
               if (arr[j] == div){
                  count += 1;
               }
            }
         }
      }
   }
   return count;
};
console.log(countAP(arr));

输出

5

以上就是在JavaScript中计算数组中可能的等差数列的详细内容,更多请关注php中文网其它相关文章!

声明:本文转载于:tutorialspoint,如有侵犯,请联系admin@php.cn删除