导航:首页 > 源码编译 > 算法最根本的评价标准

算法最根本的评价标准

发布时间:2024-11-15 07:45:33

‘壹’ 算法的评价指标有哪些

时间复杂度和空间复杂度。

1、时间复杂度

算法的时间复杂度是指执行算法所需要的计算工作量。一般来说,计算机算法是问题规模n 的函数f(n),算法的时间复杂度也因此记做。

T(n)=Ο(f(n))

因此,问题的规模n 越大,算法执行的时间的增长率与f(n) 的增长率正相关,称作渐进时间复杂度(Asymptotic Time Complexity)。

2、空间复杂度

算法的空间复杂度是指算法需要消耗的内存空间。其计算和表示方法与时间复杂度类似,一般都用复杂度的渐近性来表示。同时间复杂度相比,空间复杂度的分析要简单得多。

空间复杂度记做S(n)=O(f(n))。比如直接插入排序的时间复杂度是O(n^2),空间复杂度是O(1) 。而一般的递归算法就要有O(n)的空间复杂度了,因为每次递归都要存储返回信息。一个算法的优劣主要从算法的执行时间和所需要占用的存储空间两个方面衡量。

(1)算法最根本的评价标准扩展阅读:

算法的方法:

1、递推法

递推是序列计算机中的一种常用算法。它是按照一定的规律来计算序列中的每个项,通常是通过计算机前面的一些项来得出序列中的指定项的值。其思想是把一个复杂的庞大的计算过程转化为简单过程的多次重复,该算法利用了计算机速度快和不知疲倦的机器特点。

2、递归法

程序调用自身的编程技巧称为递归(recursion)。一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。递归的能力在于用有限的语句来定义对象的无限集合。

一般来说,递归需要有边界条件、递归前进段和递归返回段。当边界条件不满足时,递归前进;当边界条件满足时,递归返回。

注意:

(1) 递归就是在过程或函数里调用自身.

(2) 在使用递归策略时,必须有一个明确的递归结束条件,称为递归出口。

阅读全文

与算法最根本的评价标准相关的资料

热点内容
pdf农药 浏览:226
canal加密 浏览:495
日本安卓系统和中国有什么区别 浏览:134
linux命令行修改文件 浏览:836
从编译和解释的角度看 浏览:647
徐志摩pdf 浏览:649
夏天解压球视频 浏览:302
全封闭压缩机qd91h 浏览:666
如何在我的世界免费开一个服务器 浏览:327
python时间对比 浏览:120
单片机模块化编程教学 浏览:344
打开pdf格式 浏览:733
跑显存命令 浏览:120
windows下编译python 浏览:609
linux蓝牙连接 浏览:900
安卓qq邮箱格式怎么写 浏览:431
如何电信租用服务器吗 浏览:188
编程中计算根号的思维 浏览:183
可爱的程序员16集背景音乐 浏览:448
软件代码内容转换加密 浏览:797