编辑代码

// 递归方式
function recursiveArraySum(arr, start, end) {
  if (start === end) {
    return arr[start];
  } else {
    const mid = Math.floor((start + end) / 2);
    const leftSum = recursiveArraySum(arr, start, mid);
    const rightSum = recursiveArraySum(arr, mid + 1, end);
    return leftSum + rightSum;
  }
}

function arraySumRecursive(arr) {
  return recursiveArraySum(arr, 0, arr.length - 1);
}

const array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
const sum1 = arraySumRecursive(array);
console.log("数组累加的结果 (递归) :", sum1);

// 递推方式
function arraySumIterative(arr) {
  let sum = 0;
  for (let i = 0; i < arr.length; i++) {
    sum += arr[i];
  }
  return sum;
}

const sum2 = arraySumIterative(array);
console.log("数组累加的结果 (迭代) :", sum2);