数据结构与算法分析:引论

1.数学知识复习

① 对数:      \log _{a}b=\frac{\log _{c}b}{\log _{c}a}

 ②级数:        \sum_{i=0}^{N}2^{i}=2^{N+1}-1

                        \sum_{i=0}^{N}A^{i}=\frac{A^{N+1}-1}{A-1}

                        当0<A<1时, \sum_{i=0}^{N}A^{i}\leqslant \frac{1}{1-A}

                        这些公式是“几何级数”公式

                        分析另一种常见类型:算数级数

                         \sum_{i=1}^{N}i=\frac{N\left ( N+1 \right )}{2}\approx \frac{N^{2}}{2}

                        \sum_{i=1}^{N}{i^{2}}=\frac{N\left ( N+1\right )\left ( 2N+2 \right )}{6}\approx \frac{N^{3}}{3}

                        当k不等于-1时,\sum_{i=1}^{N}i^{k}\approx \frac{N^{k+1}}{\left | k+1 \right |}

扫描二维码关注公众号,回复: 3282795 查看本文章

                        _{_H{n}}=\sum_{i=1}^{N}\frac{1}{i}\approx \log _{e}N

  ③模运算

       如果N整除A-B,那么我们就说A与B模N同余,记为A\equiv B\left ( mod N\right )

2.递归简论

     递归(recursive):一个函数用它自己来定义。

     递归的基本法则:

              ①基准情形:必须要有某些基准的情形,它们不用递归就能求解

              ②不断推进:对于某些需要递归求解的情形,递归调用必须总能朝着产生基准情形的方向推进

              ③设计法则:假设所有的递归调用都能运行

              ④合成效益法则:在求解一个问题的同一实例,切勿在不同的递归调用中做重复性的工作。

猜你喜欢

转载自blog.csdn.net/rachel9798/article/details/82803363