【发布时间】:2012-09-13 20:19:00
【问题描述】:
【问题讨论】:
-
也非常感谢 madflame991 的精彩编辑。
-
@Luuklag 你是英雄
标签: algorithm complexity-theory insertion
【问题讨论】:
标签: algorithm complexity-theory insertion
从 1 到 n 的数字相加是高斯的技巧:
但是,您要计算的总和从 2 开始,而不是 1,这就是为什么您必须从公式中减去第一项(即 1):
基本上,您计算从 1 到 (n-1) 的总和。如果你用n-1替换高斯技巧中的n,你会得到他们使用的第二个公式。
您还可以通过索引转换看到这一点:
如您所见,我已经调整了总和的边界:总和的上限和下限都减少了 1。实际上,这会将总和中的 所有项减少 1 ,要更正此问题,您必须在 Σ 下的项上加 1:(j-1) + 1 = j。
【讨论】:
(1 + 10) + (2 + 9) + (3 + 8) + (4 + 7) + (5 + 6),那是 11 的 5 倍。你除以 2,因为当你有 10 个数字时,你将它们分组二,你最终得到了一半的对:5.这有帮助吗?
1 + 2 + 3 + 4 + 5 + 6,重新排序,我们有1 + 6 + 2 + 5 + 3 + 4,配对,我们有:(1 + 6) + (2 + 5) + (3 + 4),评估括号,我们得到:7 + 7 + 7,即7*3,即7*6/2,完全正确公式告诉我们什么。
Σ(j=2 to n) j=n(n+1)/2-1 从 2 而不是 1 开始。所以它是相同的术语加在一起
除了 1。所以总和少了 1。
Σ(j=2 to n)(j-1) 是与Σ(j=1 to n-1)(j) 加在一起的相同术语。因此,要找到它的总和,请将公式 n(n+1)/2 中的 n 替换为 n-1。
【讨论】: