购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.2.2 算法分析

“嗯……算法分析吗?”

米尔嘉从理纱身后探出头来,看着屏幕。

理纱无声地点头。

“求解算法的运行步数……”米尔嘉一边环视着我们一边说,“它的确是算法分析的第一步。但是……”

理纱抬起头。

米尔嘉顿了顿,继续说道。

“但是,用它来求解算法的运行时间,必须要明确前提条件。为了能根据运行步数来判断算法的速度,前提条件中必须给出运行每一步要花费的时间。否则怎么谈论速度快慢都没有意义。”

原来如此,的确是这样。

“这是为了确定计算模型。”米尔嘉继续说明,“在理纱使用的计算模型中,运行各行所消耗的时间都相等。也就是说,前提条件为:无论是‘ k\leftarrow 1 ’还是‘ \mathbf{if}~A[k]=v~\mathbf{then} ’,其所花费的时间都相等。这个计算模型虽然简单,但却很实用。”

“计算模型……”我小声嘀咕。

“米尔嘉学姐!”泰朵拉提了提音量,“话说回来,您清楚算法的特征吗?有输入、有输出、步骤明确,还有两个是……”

“输入、输出、确定性、可行性、有穷性。”米尔嘉立刻回答道,“不过,也存在没有输入的情况。”

“确定性指的是步骤有明确定义是吧。可行性指的是?”

“可行性指的是该算法的操作 可以实际运行。”

“哦哦……那么有穷性是?”

“有穷性指的是算法的运行时间是有限的。”

“原来如此。输入、输出、确定性、可行性、有穷性……”泰朵拉记在了笔记本上。 QiXgEvIi/L3WUTHauYbTfzLO9oDsY7RZljYFcdUQoM7RZyT8MIIaBB+93BbAUF32

点击中间区域
呼出菜单
上一章
目录
下一章
×