算法课堂笔记1—算法分析的数学基础

算法课要期末考了!!! 现在复习中 顺便补下应该作的笔记

第一章 算法分析的数学基础


 --首先是一些记号:


 1. 复杂函数的阶渐近复杂性

即:

这里难点是怎么理解各个量是什么玩意儿,数学就是这样,变量符号一大堆,不清楚哪个是哪个的话很容易头晕。

符号 n 的意义,这个表示的我们的输入规模,比如对n个数排序,那么输入规模就是n。首先呢,T(n)是个复杂函数,给出的例子是3n3+2n2,然后怎么求他的复杂性阶呢?上阶:3n3+2n2<=5n(这里n是输入规模,一定是大于等于1的,所以

2n》=2n2), 所以上阶是 c*n(c是一大于0的常数),则表示为T(n)=O(n3),至于下界和同 阶类推就可以了。


 2. 和的估计与界限

 这小节主要讲了写估计和的界限的一些常用方法:

 第一种:直接求和的界限,比如:

, 

第二种:求和转化为求积分

第三种:递归方程

 


  3. 主定理

 比较重要的知识,考试估计会考到,好好复习下。

 

关于主定理的理解:首先主定理只适用于上述的3种情形,不是这3种不能套用。不管是那种情形,实际上都是将f(n)的阶与的阶比较,其中哪个较大就取哪个的时间复杂度,若两者的时间复杂度是同阶的则取第二种情况

来个例子:

 

原文地址:https://www.cnblogs.com/f91og/p/6237089.html