算法设计与分析基础
第一章:绪论、
欧几里得算法:
证明:等式 gcd(m,n)=gcd(n, m mod n) 对于每一对正整数(n,m)都成立
我一天说着复习,但是突然打开了沙雕电视剧,突然发现了这下我也没有好好的学习,哎呀,这些天简直了,我们 也要这样好好的学习,狭路相逢勇者胜
渐进符号和基本效率类型:
三个符号
非递归算法的数学分析:
分析非递归算法效率的通用方案
1 决定用哪个(哪些)参数表示输入规模。
2 找出算法的基本操作(作为一个规律,它总是位于算法的最内层循环中)。
3 检查基本操作的执行次数是否只依赖于输入规模。如果它还依赖于一些其他的特性,则最差效率,平均效率以及最有效率需要分别研究。
4 建立一个算法基本操作执行次数的求和表达式。
5 利用求和运算的标准公式和法则来建立一个操作的闭合公式,或者至少确定的增长次数。
分析递归算法时间效率的通过方案
1 决定找出那个(哪些)参数作为输入规模的度量标准。
2 找出算法的基本操作
3 检查一下,对于相同规模的不同输入,基本操作的执行次数是否可能不同。如果有这种可能,则必须对最差效率,平均效率以及最优效率做单独研究。
4 对于算法基本操作的执行次数,建立一个递推关系以及相应的初始条件。
5 解这个递推式,或者至少确定它的解的增长次数。
突出主题:
计算第N个斐波拉契数列:
算法的经验分析: