码迷,mamicode.com
首页 > 编程语言 > 详细

算法系列:算法基础之如何分析算法?

时间:2017-10-07 22:56:03      阅读:277      评论:0      收藏:0      [点我收藏+]

标签:浮点   预测算法   范围   资源   处理   常用指令   随机   执行   and   

定义:分析算法是指预测算法需要的计算时间。

在能够分析一个算法之前,我们必须有一个要使用的实现技术的模型,包括描述所用资源及其代价的模型。

实现技术:一般假定一种通用的单处理器计算模型——随机访问机(Random-access machine,RAM)来作为我们的实现技术,算法还可以用计算机程序来实现。

在RAM模型中,

(1)指令一条接一条的执行,没有并发操作;

(2)RAM模型包含真实计算机中的常用指令:算术指令(如加法、减法、乘法、除法、取余、向下取整、向上取整)、数据移动指令(装入、存储、复制)和控制指令(条件与无条件转移、子程序调用与返回);

(3)每条指令的所需的时间都为常量;

(4)模型中的数据类型有整数型和浮点实数型;

(5)对每个数据字的规模假定一个范围。例如,当处理规模为n的输入时,一般假定对某个大于等于1的常量c,整数由clgn位来表示(为什么?)

实例:插入排序算法的分析

 

算法系列:算法基础之如何分析算法?

标签:浮点   预测算法   范围   资源   处理   常用指令   随机   执行   and   

原文地址:http://www.cnblogs.com/kyrie9527/p/7636017.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!