Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

ผลรวมกำลังสองของจำนวนคี่ n ตัวแรก - JavaScript

คำนวณผลรวมของกำลังสองของจำนวนคี่ n ตัวแรก: 1² + 3² + 5² + ... + (2n-1)²

ตัวอย่าง

n = 3 → 1² + 3² + 5² = 1 + 9 + 25 = 35

ตัวอย่างโค้ด

const num = 3;

const squaredSum = num => {
  let sum = 0;
  for (let i = 1; i <= num; i++) {
    sum += Math.pow((2 * i) - 1, 2);
  }
  return sum;
};

console.log(squaredSum(num));

ผลลัพธ์

35

สูตรทางคณิตศาสตร์ (Closed Form) - O(1)

ผลรวมกำลังสองของจำนวนคี่ n ตัวแรก = n(2n-1)(2n+1)/3

const squaredSumFormula = n => 
  n * (2 * n - 1) * (2 * n + 1) / 3;

console.log(squaredSumFormula(3)); // 35

เร็วกว่าลูปมากสำหรับ n ใหญ่ ไม่ต้อง Iterate