闲暇时间,准备系统、深入的学习一下「数据结构和算法」,不出意外,我将使用 CJava 两种语言来实现。在正式进入学习之前,需要补一补丢失已久的一些基本数学证明方法。

指数

  1. 同底数幂相乘,底数不变,指数相加:$X^AX^B = X^{A+B}$
  2. 同底数幂相除,底数不变,指数相减:$\frac{X^A}{X^B} = X^{A-B}$
  3. 幂的幂,底数不变,指数相乘:$(X^A)^B = X^{AB}$
  4. $X^N + X^N = 2X^N \neq X^{2N}$, $2^N + 2^N = 2^{N+1}$

对数

在计算机中,除非有特殊的声明,所有的对数都是以 2 为底。

通常,$X(X>0, X \neq 1 )$ 的 $A$ 次幂等于 $B$,即 $X^A = B$,数 $A$ 叫做 以 $X$ 为底 $B$ 的对数,记作 $log_XB = A$,其中 $A$ 叫做对数的 底数,$N$ 叫做 真数

一些有用的公式如下:

  1. $logA/B = logA - logB$
  2. $log(A^B) = B logA$
  3. $log 1 = 0,log 2 = 1,log 1024 = 10,log 1 048 576 = 20$

级数

级数是指将数列 $U_n$ 的项 $U_1,U_2,…,U_n$ 依次用加号连接起来的函数,如 $U_1 + U_2 + … + U_n$,简写为:$\sum U_n$,$U_n$ 称为级数的通项。

最容易记的公式:$\sum_{i = 0}^N 2^i = 2^{N+1} - 1$ 和 $\sum_{i = 0}^N A^i = \frac{A^{N+1} - 1}{A - 1}$