|
|
51CTO旗下网站
|
|
移动端

2.2 模型

《数据结构与算法分析:Java语言描述(原书第3版)》第2章算法分析,本章对如何分析程序的复杂性给出一些提示。遗憾的是, 它并不是完善的分析指南。简单的程序通常给出简单的分析, 但是情况也并不总是如此。本节为大家介绍模型。

作者:冯舜玺/陈越 译来源:机械工业出版社|2016-04-13 11:26

2.2 模型

为了在正式的构架中分析算法, 我们需要一个计算模型。我们的模型基本上是一台标准的计算机, 在机器中指令被顺序地执行。该模型有一个标准的简单指令系统, 如加法、 乘法、 比较和赋值等。但不同于实际计算机情况的是, 模型机做任一件简单的工作都恰好花费一个时间单位。为了合理起见, 我们将假设模型像一台现代计算机那样有固定大小(比如32位)的整数并且不存在如矩阵求逆或排序这种想象的操作, 它们显然不能在一个时间单位内完成。我们还假设模型机有无限的内存。

显然, 这个模型有些缺点。很明显, 在现实生活中不是所有的运算都恰好花费相同的时间。特别在我们的模型中, 一次磁盘读入按一次加法计时, 虽然加法一般要快几个数量级。还有, 由于假设有无限的内存, 我们再不用担心缺页中断, 而它可能是个实际问题, 特别是对一些高效的算法。32

喜欢的朋友可以添加我们的微信账号:

51CTO读书频道二维码


51CTO读书频道活动讨论群:342347198

【责任编辑:book TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

非常网管——网络工程案例

本书面向企业网络应用需求,详细介绍了Windows网络互联解决方案、中小企业共享上网解决方案、基于ISA Server 2006的代理服务器与防火墙解决...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊