导航:首页 > 源码编译 > 衡量一个算法的好坏的指标是什么

衡量一个算法的好坏的指标是什么

发布时间:2022-10-02 21:35:33

❶ 评价算法优劣的标准是

同一问题可用不同算法解决,而一个算法的质量优劣将影响到算法乃至程序的效率。算法分析的目的在于选择合适算法和改进算法。一个算法的评价主要从时间复杂度和空间复杂度来考虑。

时间复杂度

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

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

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

空间复杂度

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

正确性

算法的正确性是评价一个算法优劣的最重要的标准。

可读性

算法的可读性是指一个算法可供人们阅读的容易程度。

健壮性

健壮性是指一个算法对不合理数据输入的反应能力和处理能力,也称为容错性。

(1)衡量一个算法的好坏的指标是什么扩展阅读

算法可大致分为基本算法、数据结构的算法、数论与代数算法、计算几何的算法、图论的算法、动态规划以及数值分析、加密算法、排序算法、检索算法、随机化算法、并行算法,厄米变形模型,随机森林算法。

算法可以宏泛的分为三类:

一,有限的,确定性算法 这类算法在有限的一段时间内终止。他们可能要花很长时间来执行指定的任务,但仍将在一定的时间内终止。这类算法得出的结果常取决于输入值。

二,有限的,非确定算法 这类算法在有限的时间内终止。然而,对于一个(或一些)给定的数值,算法的结果并不是唯一的或确定的。

三,无限的算法 是那些由于没有定义终止定义条件,或定义的条件无法由输入的数据满足而不终止运行的算法。通常,无限算法的产生是由于未能确定的定义终止条件。

参考资料:算法--网络

❷ 评价算法的四个标准是什么

评价算法的四个标准:

1.正确性

能正确地实现预定的功能,满足具体问题的需要。处理数据使用的算法是否得当,能不能得到预想的结果。

2.易读性

易于阅读、理解和交流,便于调试、修改和扩充。写出的算法,能不能让别人看明白,能不能让别人明白算法的逻辑?如果通俗易懂,在系统调试和修改或者功能扩充的时候,使系统维护更为便捷。

3.健壮性

输入非法数据,算法也能适当地做出反应后进行处理,不会产生预料不到的运行结果。数据的形式多种多样,算法可能面临着接受各种各样的数据,当算法接收到不适合算法处理的数据,算法本身该如何处理呢?如果算法能够处理异常数据,处理能力越强,健壮性越好。

4.时空性

算法的时空性是该算法的时间性能和空间性能。主要是说算法在执行过程中的时间长短和空间占用多少问题。

算法处理数据过程中,不同的算法耗费的时间和内存空间是不同的。

(2)衡量一个算法的好坏的指标是什么扩展阅读:

算法是对特定问题求解步骤的一种描述,它是指令的有限序列,其中每一条指令表示一个或多个操作。此外,一个算法还具有下列5个重要的特性。

(1)、有穷性

一个算法必须总是(对任何合法的输入值)在执行有穷步之后结束,且每一步都可在有穷时间内完成。

(2)、确定性

算法中每一条指令必须有明确的含义,读者理解时不会产生二义性。即对于相同的输入只能得到相同的输出。

(3)、可行性

一个算法是可行的,即算法中描述的操作都是可以通过已经实现的基本运算执行有限次来实现的。

(4)、输入

一个算法有零个或多个的输入,这些输入取自于某个特定的对象的集合。

(5)、输出

一个算法有一个或多个的输出,这些输出是同输入有着某种特定关系的量。

❸ 数据结构中评价算法的两个重要指标是什么

数据结构中评价算法的两个重要指标是时间复杂度和空间复杂度。

同一问题可用不同算法解决,而一个算法的质量优劣将影响到算法乃至程序的效率。算法分析的目的在于选择合适算法和改进算法。一个算法的评价主要从时间复杂度和空间复杂度来考虑。

1、时间复杂度:

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

2、空间复杂度:

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

(3)衡量一个算法的好坏的指标是什么扩展阅读:

评估算法效率的方法:

1、事后统计方法

这种方法主要是通过设计好的测试程序和数据,利用计算机计时器对不同算法编制的程序的运行时间进行比较,从而确定算法效率的高低。

2、事前分析估算方法

在计算机程序编写前,依据统计方法对算法进行估算。经过总结,可以发现一个高级语言编写的程序在计算机上运行时所消耗的时间取决于下列因素:算法采用的策略、编译产生的代码质量、问题的输入规模、机器执行指令的速度。

参考资料来源:网络-算法

❹ 算法优劣的五个标准是什么

根据调度机制
的三个逻辑功能程序模块组成来评判:
(1)队列管理程序
(2)上下文切换程序
(3)分派程序

❺ 算法的衡量标准有哪些

衡量算法的三个标准是:时间复杂度、空间复杂度和难易程度。时间复杂度可以简单的说就是:大概程序要被执行的次数,而非时间。
注意:是次数,不是时间,因为不同机器的性能是不一样的,不要用计时器在那里计时谁的更快。当然,如果在同一台电脑上运行计时另说。
空间复杂度:同样简单来说就是:算法执行过程中大概所占用的最大的内存。

❻ 如何判断一个算法的好坏

首先,这个算法必须是正确的
其次,好的算法应该是友好的,便于人们理解和交流,并且是机器可执行的。
这个算法还需要足够健壮,即当输入的数据非法或不合理时,也能适当的做出正确的反应或进行相应的处理
最后它还必须拥有高效率和低存储量要求。
也就是楼上几位说的时间复杂度和空间复杂度
占的地方越小,算得越快的算法才是好算法。

❼ 算法的评价指标有哪些

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

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)的空间复杂度了,因为每次递归都要存储返回信息。一个算法的优劣主要从算法的执行时间和所需要占用的存储空间两个方面衡量。

(7)衡量一个算法的好坏的指标是什么扩展阅读:

算法的方法:

1、递推法

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

2、递归法

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

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

注意:

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

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

❽ 评价算法优劣的标准是

①时间复杂度:同样的输入规模(问题规模)花费多少时间
②空间复杂度:同样的输入规模花费多少空间(主要是内存)
以上两点越小越好
③稳定性:不会因为输入的不同而导致不稳定的情况发生
④算法思路是否简单:越简单越容易实现越好

❾ 衡量算法好坏的标准

1:时间复杂度:

可以简单的说就是:大概程序要被执行的次数,而非时间。注意:是次数,不是时间,因为不同机器的性能是不一样的,不要用计时器在那里计时谁的更快。当然,如果在同一台电脑上运行计时另说。
Question:怎样看待一个程序执行的速度是快还是慢?
Answer:要看他里边最关键的运行次数最多的那一个步骤到底执行了几次,用这个来衡量算法的时间复杂度

2:空间复杂度:

同样简单来说就是:算法执行过程中大概所占用的最大的内存。

3:难易程度:

所研究的算法尽可能让大家能看懂。

4:健壮性:

简单来说哦,不要一碰就完不结实

5:正确性:

一定要正确,感觉这一特性说不说都是可以,不正确也不能用,这一切的前提都是以正确为前提的。

阅读全文

与衡量一个算法的好坏的指标是什么相关的资料

热点内容
用粘液做解压手套 浏览:327
icloud收信服务器地址 浏览:498
编程思考者 浏览:450
压缩机型号用什么氟利昂 浏览:553
农机空气压缩机 浏览:664
程序员下载歌曲 浏览:894
编译未检测到仿真器 浏览:807
压缩机每次启动12分钟就停 浏览:730
creo复制曲面命令 浏览:959
程序员恋上女硕士 浏览:669
ansys的get命令 浏览:988
国外dns苹果服务器地址 浏览:430
国家职业技术资格证书程序员 浏览:652
奇瑞租车app是什么 浏览:99
系统源码安装说明 浏览:420
命令行加壳 浏览:96
解压时显示防失效视频已加密 浏览:295
苹果短信加密发送 浏览:446
天翼私有云服务器租用 浏览:733
贵州云服务器属于哪个上市公司 浏览:59