算法基础知识(考试复习)

                       ——————对于 屈婉玲 《算法设计与分析》的总结
                                                             图片来自电子书或教学视频

算法的特点:

在这里插入图片描述

  1. 算法的特点有:有穷性可行性确定性输入性输出性。(程序可以是无穷的——操作系统
  2. 算法的时间复杂度是对算法效率的度量。
  3. 最坏情况下的时间复杂度代表了该算法求解输入规模为n的实例所需要的最长时间W(n);而平均情况下的时间复杂度代表了该算法求解输入规模为n的实例所需要的平均时间A(n)。
    在这里插入图片描述
    即,在数组中的情况+不在数组中的情况。

算法的数学基础:

一、函数的渐进的界
定义

在这里插入图片描述
在这里插入图片描述
注意:

  1. f(n)=O(g(n)),f(n)的阶不高于g(n)的阶。
  2. O与o、Ω与w的区别,O和Ω是区间,o和w是区间。
  3. 由 f(n)=o(g(n)) 可以推出 f(n)= O(g(n)),但是反过来不行。类似的Ω和w也有相同的性质。
  4. (1)和(2)要求存在一个与n无关的常数 c,所以只需要关注非常大的n满足这个不等式即可。而(3)和(4)中的 c 不是常数,它可以任意小。
  5. 如果上界与下界的阶相等,f(n)=θ(g(n)),此时f(n)与g(n)的增长仅差一个常数因子,也称作g(n)是f(n)紧的界。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
下界为O(1) ——**可能是,如果不对欢迎指正鸭**

定理一

在这里插入图片描述
以下给出的证明:
在这里插入图片描述
例题: 估计函数的阶
在这里插入图片描述
一些重要结果

  1. 多项式函数的阶低于指数函数的阶。(两个函数相除求极限,利用洛必达法则即可证明)
  2. 对数函数的阶低于幂函数的阶。
    O( logn) <O(n^1/10000000000)
定理二

在这里插入图片描述
函数的阶之间的关系具有传递性。
在这里插入图片描述

定理三

在这里插入图片描述
该性质可以推广到有限个函数。
算法由有限个步骤构成,若每一步的时间复杂度函数的上界都是h(n),那么该算法的时间复杂度函数可以写作O(h(n))。

总结
  • 估计函数阶的方法:
    计算极限
    阶具有传递性
  • 对数函数的阶低于幂函数的阶,多项式函数的阶低于指数函数的阶。
  • 算法的时间复杂度是各步操作时间之和,在常数步的情况下取得最高阶的函数即可。
几类重要的函数
一、对数函数

常用简写的符号:
在这里插入图片描述
性质:
在这里插入图片描述
证明:
在这里插入图片描述
性质二证明:
在这里插入图片描述
性质三证明:
在这里插入图片描述

二、指数函数于阶乘

在这里插入图片描述
应用:估计搜索空间的大小
在这里插入图片描述
m元钱、投资n个项目的分配方案数。应用组合数估计。

在这里插入图片描述
在这里插入图片描述

  • 以上证明得 n! 与 nlog(n) 同阶。
三、取整函数

定义:
取整函数的定义:
性质:

在这里插入图片描述
例题:按照阶排序(由高到低)
在这里插入图片描述
答案:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值