二项式定理
二项式 指含有两项的多项式,如:$5y^3-3$ , $a+b$
二项式与杨辉三角
我们把 $(a+b)^n$ 展开,可以得到一些的多项式
$(a+b)^0=1$
$(a+b)^1=a+b$
$(a+b)^2=a^2+2ab+b^2$
$(a+b)^3=a^3+3a^2b+3ab^2+b^3$
$(a+b)^4=a^4+4a^3b+6a^2b^2+4ab^3+b^4$
可以发现,它们的系数刚好是一个杨辉三角$$1 \\ 1 \quad 1 \\ 1 \quad 2 \quad 1 \\ 1 \quad 3 \quad 3 \quad 1 \\ 1 \quad 4 \quad 6 \quad 4 \quad 1$$
于是我们可以打出杨辉三角 时间复杂度 $O(n^2)$
for(int i=0;i<=n;i++){ c[i][0]=i; for (int j=1;j<=i;j++) c[i][j]=c[i-1][j-1]+c[i-1][j]; }
或是单独计算 $(a+b)^n$ 的系数 时间复杂度 $O(n)$
通过组合数公式 $C_n^k=\frac{n!}{k!(n-k)!}$ 可以推导出 $C_n^k=\frac{n-k+1}{k} C_n^{k-1}$ ,于是
c[0]=1; for(int i=1;i<=n;i++) c[i]=(n-i+1)*c[i-1]/i;
二项式定理
将杨辉三角写成组合数$$C_0^0 \\ C_1^0 \quad C_1^1 \\ C_2^0 \quad C_2^1 \quad C_2^2 \\ C_3^0 \quad C_3^1 \quad C_3^2 \quad C_3^3 \\ C_4^0 \quad C_4^1 \quad C_4^2 \quad C_4^3 \quad C_4^4$$
寻找规律可以得到$$(a+b)^n=\sum_{k=0}^n C_n^k a^{n-k} b^k$$