算法基础知识(考试复习)
——————对于 屈婉玲 《算法设计与分析》的总结图片来自电子书或教学视频
算法的特点:
- 算法的特点有:有穷性、可行性、确定性、输入性、输出性。(程序可以是无穷的——操作系统)
- 算法的时间复杂度是对算法效率的度量。
- 最坏情况下的时间复杂度代表了该算法求解输入规模为n的实例所需要的最长时间W(n);而平均情况下的时间复杂度代表了该算法求解输入规模为n的实例所需要的平均时间A(n)。
即,在数组中的情况+不在数组中的情况。
算法的数学基础:
一、函数的渐进的界
定义
注意:
- f(n)=O(g(n)),f(n)的阶不高于g(n)的阶。
- O与o、Ω与w的区别,O和Ω是闭区间,o和w是开区间。
- 由 f(n)=o(g(n)) 可以推出 f(n)= O(g(n)),但是反过来不行。类似的Ω和w也有相同的性质。
- (1)和(2)要求存在一个与n无关的常数 c,所以只需要关注非常大的n满足这个不等式即可。而(3)和(4)中的 c 不是常数,它可以任意小。
- 如果上界与下界的阶相等,f(n)=θ(g(n)),此时f(n)与g(n)的增长仅差一个常数因子,也称作g(n)是f(n)紧的界。
下界为O(1) ——**可能是,如果不对欢迎指正鸭**
定理一
以下给出的证明:
例题: 估计函数的阶
一些重要结果
- 多项式函数的阶低于指数函数的阶。(两个函数相除求极限,利用洛必达法则即可证明)
- 对数函数的阶低于幂函数的阶。
O( logn) <O(n^1/10000000000)
定理二
函数的阶之间的关系具有传递性。
定理三
该性质可以推广到有限个函数。
算法由有限个步骤构成,若每一步的时间复杂度函数的上界都是h(n),那么该算法的时间复杂度函数可以写作O(h(n))。
总结
- 估计函数阶的方法:
计算极限
阶具有传递性 - 对数函数的阶低于幂函数的阶,多项式函数的阶低于指数函数的阶。
- 算法的时间复杂度是各步操作时间之和,在常数步的情况下取得最高阶的函数即可。
几类重要的函数
一、对数函数
常用简写的符号:
性质:
证明:
性质二证明:
性质三证明:
二、指数函数于阶乘
应用:估计搜索空间的大小
m元钱、投资n个项目的分配方案数。应用组合数估计。
- 以上证明得 n! 与 nlog(n) 同阶。
三、取整函数
定义:
性质:
例题:按照阶排序(由高到低)
答案:
算法基础知识(考试复习)相关推荐
- 计算机二级循环队列知识点,考点!计算机二级考试公共基础知识冲刺复习笔记:栈、队列和循环队列...
小编所收集到的相关计算机二级考试公共基础知识冲刺复习笔记:栈.队列和循环队列的资料 大家要认真阅读哦! 1.栈(Stack)又称堆栈. (1)栈是一种运算受限的线性表,其限制是仅允许在表的一端进行插入 ...
- 计算机二级链表,你知道吗?计算机二级考试公共基础知识冲刺复习笔记:线性链表、双向链表与循环链表...
小编所收集到的相关计算机二级考试公共基础知识冲刺复习笔记:线性链表.双向链表与循环链表的资料 大家要认真阅读哦! 1.数据结构中,每个数据存储在一个存储单元中,这个存储单元称为结点.在链式存储方式中, ...
- 计算机基础知识复习资料,计算机基础知识考试复习题「附答案」
一.单选题 1.某型计算机运算速度为数千亿次秒,主要用于大型科学与工程计算和大规模数据处理,它属于_____. A:巨型计算机 B:小型计算机 C:微型计算机 D:专用计算机 答案: A 评析:空 2 ...
- 2020计算机基础知识考试题及答案,2020年计算机二级公共基础知识考试模拟习题及答案...
[导语]2020年计算机二级考试备考正在进行中,为了方便考生及时有效的备考,那么,无忧考网为您精心整理了2020年计算机二级公共基础知识考试模拟习题及答案,供大家的参考学习.如想获取更多计算机二级考试 ...
- [渝粤教育] 西南科技大学 计算机网络应用基础 在线考试复习资料2021版(1)
计算机网络应用基础--在线考试复习资料2021版 一.单选题 1. 在数字通信中广泛采用CRC循环冗余码的原因是CRC可以( ). A. 检测出一位差错 B. 检测并纠正一位差错 C. 检测 ...
- 计算机文化基础期末考试复习
计算机文化基础期末考试复习以下是咱们期末考试的复习题,希望大家认真学习: 一.选择题 1. 第一台计算机ENIAC淡生于1946年,是电子管计算机:第二代是晶体管计算机:第三代是中小规模集成电路: ...
- 2022年证券从业资格金融市场基础知识考试多选题专练及答案
题库来源:优题宝公众号 2022年证券从业资格金融市场基础知识考试多选题专练及答案,由优题宝公众号根据最新证券从业资格金融市场基础知识考试大纲与历年证券从业资格金融市场基础知识考试真题汇总编写,包含证 ...
- 算法基础知识——动态规划
算法基础知识--动态规划 目录: 基础知识 分治法和动态规划的区别 动态规划算法设计步骤 最优子结构性质定义 动态规划两种等价的实现方法(自顶向下带备忘.自底向上) 子问题图 经典问题 钢条切割 矩阵 ...
- 计算机术语中CPU是指______,试题题库_计算机基础知识考试试卷全套.doc
试题题库_计算机基础知识考试试卷全套.doc 第一部分 计算机基础知识 (一)单项选择题 1. 世界上第一台计算机使用的物理器件是( ). A)电子管 B)继电器 C)晶体管 D)集成电路 2. 第四 ...
- [渝粤教育] 西南科技大学 电子技术基础 在线考试复习资料(1)
电子技术基础--在线考试复习资料 一.单选题 1.一个8选一的数据选择器,其地址输入(选择控制输入)端有( )个 A.1 B.2 C.3 D.4 2.8位移位寄存器,将并行数据经( ...
最新文章
- 学习 PHP SOAP 扩展的一些笔记
- android API 参考大全
- C语言 课设 最新版 学生成绩管理系统
- WebSocket服务器端的日志重复打印问题
- ts获取服务器数据_基于Nginx的媒体服务器技术-线上公开课
- python创建变量score_使用Python 3.5.1中的变量创建文件时的FileNotFoundError
- 自适应粉色可爱棒棒糖倒立404错误页面源码
- 图 邻接表 建立 深度遍历 广度遍历
- 简明 Vim 练级攻略 | 酷壳 - CoolShell.cn
- Java线程同步之一--AQS
- GoLang 插件化开发
- pb语言是什么计算机语言,Pb编程语言深入讲解,了解pb语言的if判断语句!
- ArcGIS影像多种裁剪方法
- 何园–中国晚清第一园
- 1553B 协议详解
- 无接任何usb设备却提示无法识别usb设备
- CF498D Traffic Jams in the Land
- data guard汇总(1)
- PCIe扫盲——PCI总线基本概念
- 幸好有了这份“星级”的阿里面经!“穷苦乡村”小伙就得安于现状?(终获阿里Java开发P7岗)