2.1 分析框架

2.1.1 输入规模的度量

  • 大多数情况,以输入数n
  • 矩阵,维数
  • 数值算法,数字的比特数

2.1.2 运行时间的度量单位

  1. 找出算法中最重要的操作,即基本操作
  2. 计算他们的运行次数

2.1.3 增长次数

logn      n        nlogn        n2       n3       2n        n!

2.1.4 算法的最优、最差和平均效率

  • 最优效率
  • 最差效率
  • 平均效率
  • 摊销效率

2.2 渐进符号和基本效率类型

2.2.1 介绍Ο,Ω,Θ

Ο (g(n))是增长次数小于等于g(n)的函数集合

Ω (g(n))是增长次数大于等于g(n)的函数集合

Θ(g(n))是增长次数等于g(n)的函数集合

2.2.2 符号Ο

2.2.5 渐进符号的有用特性

2.2.6 利用极限比较增长次数

前两种情况:

后两种情况:

第二种情况:

2.2.7 基本的效率类型

2.3 非递归算法的数学分析

分析非递归算法效率的通用方案:

  1. 决定用哪个(些)参数作为输入规模的度量
  2. 找出算法的基本操作(作为一个规律,它总是位于算法的最内层循环)
  3. 检查基本操作的执行次数是否只依赖输入规模。如它还依赖一些其他的特性,如输入顺序等,则最差效率、平均效率以及最优效率需要分别研究。
  4. 建立一个算法基本操作执行次数的求和表达式
  5. 利用求和运算的标准公式和法则来建立一个操作次数的闭合公式,或至少确定它的增长次数。

求和运算的两个基本规则:

两个常见求和公式:

2.4 递归算法的数学分析

递推式的形式来表达基本操作次数

  1. 决定用那些参数作为输入规模的度量
  2. 找出算法的基本操作
  3. 检查一下,对于相同规模的不同输入,基本操作的执行次数是否不同。如果不同,则必须对最差效率、平均效率以及最优效率作单独研究
  4. 对于算法基本操作的执行次数,建立一个递推关系以及相应的初始条件
  5. 解这个递推式,或者至少确定它的解的增长次数

转载于:https://www.cnblogs.com/chio/archive/2007/11/06/951064.html

《算法设计与分析基础》Chapt 2 算法效率分析基础相关推荐

  1. linux算法设计,嵌入式Linux平台下随机序列算法设计.doc

    嵌入式Linux平台下随机序列算法设计 嵌入式Linux平台下随机序列算法设计 [摘 要]本文以多媒体播放器的随机不重复播放机能为切入点,针对嵌入式平台实时性要求高,处理速度不够快,但系统存储歌曲量大 ...

  2. WebGIS空间寻径算法设计(车辆自驾导航算法)

    [size=large][b]一.路网空间模型设计[/b][/size] 采用有向连通图模型对路网建模 [list] [*]A.以道路交叉点作为路网的连通图节点 [*]B.以从A路点到B路点的单向通路 ...

  3. 【算法设计技巧】贪婪算法与回溯算法

    贪婪算法 在前面的文章中已经见到了3个贪婪算法(greedy algorithm):Dijkstra 算法.Prim 算法和 Kruskal 算法.贪婪算法分阶段地工作.在每个阶段,可以认为所作决定是 ...

  4. 算法设计原则验证实验报告_算法设计与分析实验报告 统计数字问题

    一 . 实验要求 1 .掌握算法的计算复杂性概念. 2 .掌握算法渐近复杂性的数学表述. 3 .掌握用 C++ 语言描述算法的方法. 4 .实现具体的编程与上机实验,验证算法的时间复杂性函数. 二 . ...

  5. 计算机思维与算法设计论文,计算思维_计算机算法的表示和设计.pptx

    计算思维;1.一般问题处理过程与计算机处理问题过程区别2.算法的表示3.变量及其赋值4.顺序结构算法5.选择结构/分支结构6.循环结构7.简单算法;一般问题处理过程与计算机处理问题过程有何不同呢?;1 ...

  6. 算法设计:双相机高斯建模算法优化

    问题描述: 1.当人体靠近背景时,由于深度值接近,两者极容易融合在一起,难于分辨,导致检测不出人形 2.使用一次建模,发现双相机中建模效果不好,背景没有完全去除 3.去除背景后,距离较远的人形不太完整 ...

  7. 程振波 算法设计与分析_算法设计与分析

    本书按照教育部*制定的计算机科学与技术专业规范的教学大纲编写,努力与国际计算机学科的教学要求接轨.强调 算法 与 数据结构 之间密不可分的联系,因而强调融数据类型与定义在该类型上的运算于一体的抽象数据 ...

  8. 【算法设计zxd】第一章 算法基础 4.设计工具【三角矩阵,】

    目录 1. 循环设计 (1) 设计思维 自底向上的设计(Down - Top Design) 自顶向下的设计(Top-Down Design) (2)挖掘内在规律构建计算模型 [例1-3]设计算法,输 ...

  9. 华南师范大学陈卫东算法设计与分析研究生考试复习资料

      最近要考试搜索了一下,发现网上并没有该复习资料.本来打算直接CSDN上传文件算了,结果设置免费想要下载还是要做任务,给我整无语了,这一点都不开源,因此把这份资料放在GitHub上供大家自由获取. ...

  10. 循环赛日程表非递归Java_王晓东《算法设计与分析》课件.ppt

    <王晓东<算法设计与分析>课件.ppt>由会员分享,可在线阅读,更多相关<王晓东<算法设计与分析>课件.ppt(356页珍藏版)>请在人人文库网上搜索. ...

最新文章

  1. Spring学习总结(6)——Spring之核心容器bean
  2. 上次谁说要简历模板来着?来!
  3. hdu 5077 NAND(打表)2014 Asia regional 鞍山站 H题
  4. spring boot应用启动原理分析
  5. Touchpad Synaptics 触摸板(中文) [zt]
  6. SharePoint 数据库管理-PowerShell
  7. map,multimap,unordered_map,unordered_multimap的详解
  8. 随机模拟_随机模拟可帮助您掌握统计概念
  9. 【转】Android加密算法:AES、Base64加密算法
  10. 清华计算机系上热搜!近9成优秀毕业生放弃留学,前50名41人留校深造
  11. hadoop是什么_Hadoop精华问答 | hadoop能干什么?
  12. pass the URL parameters from the webseite page to Flash
  13. 卫星移动通信系统的分类
  14. Hash算法原理的简单分析
  15. kubernetes Downward API
  16. 直接创建框架协议、合同
  17. 冒险岛2虚拟机 显示服务器连接失败怎么办 显示TP解决方法
  18. Android surfaceview 自定义相机 拍照(闪光灯、前后摄像头)
  19. Python和Matlab生成图片到visio的矢量图
  20. linux 获取当前工作路径

热门文章

  1. 深刻理解Java多态
  2. XShell中浏览文件时上拉下拉
  3. php离开界面监听,js实现用户离开页面前提示是否离开此页面的方法(包括浏览器按钮事件)...
  4. 强化学习总结(3-4)——无模型的价值函数的预测,蒙特卡洛和TD时序差分方法
  5. mongoose Warning:Server Discovery and Monitoring engine is deprecated
  6. Python 之 新手安装详解 、安装目录说明 及 修改pip默认包安装位置
  7. c语言加减法采用32位运算,单片机C语言求平方根
  8. vmlite linux版本,vmlite 安装 xp mode及xp、win7、linux的虚拟磁盘到d盘的方法
  9. 轮询没有收到的可能性_轮询(Polling)是什么?
  10. Openwrt中ppp拨号总结