首页 > 知识点讲解
       算法评价
知识路径: > 计算机科学基础 > 数据结构与算法基本概念 > 数据结构与算法 > 数据结构与算法简介 > 
相关知识点:5个      
        一般地说,设计一个“好”的算法应该考虑达到以下目标。
        (1)正确性(correctness)。算法应该是满足具体问题的需求。
        (2)可读性(readability)。算法主要是为了便于人的阅读和交流。可读性好的算法有利于人的理解。
        (3)健壮性(robustness)。指的是,当输入数据非法时,算法也能适当地做出反应或对它进行处理,而不会产生莫名其妙的输出结果。
        (4)效率和低存储量需求。效率指的是算法执行的时间。对于同一个问题,执行时间短的算法效率高。存储量需求指的是算法执行过程中所需要的最大存储空间。
        一个算法的复杂性的高低体现在运行该算法所需要的计算机资源的多少上,所需资源越多,该算法的复杂性越高;反之,所需资源越少,该算法的复杂性越低。其中最重要的就是算法的时间复杂性和空间复杂性。
        一般情况下,算法中的基本操作重复执行的次数是问题规模n的某个函数f(n),算法的时间量度记作
        T(n)=O(f(n))
        它表示随问题规模n的增大,算法执行时间的增长率和f(n)的增长率相同,称做算法的渐进时间复杂度(Asymptotic Time Complexity),简称时间复杂度。被称为问题的基本操作的原操作应是其重复执行次数和算法的执行时间成正比的原操作。语句的频度(Frequency Count)指的是该语句重复执行的次数。
        和算法的时间复杂度类似的,空间复杂度(Space Complexity)指的是算法所需存储空间的量度,记作:
        S(n)=O(f(n))
        其中,n为问题的规模或大小。根据算法的时间复杂度和空间复杂度,可以对算法进行评价。
 
 相关知识点:
 
软考在线指南
优惠劵及余额
在线支付
修改密码
下载及使用
购买流程
取消订单
联系我们
关于我们
联系我们
商务合作
旗下网站群
高级资格科目
信息系统项目管理师 系统分析师
系统架构设计师 网络规划设计师
系统规划与管理师
初级资格科目
程序员 网络管理员
信息处理技术员 信息系统运行管理员
中级资格科目
系统集成项目管理工程师 网络工程师
软件设计师 信息系统监理师
信息系统管理工程师 数据库系统工程师
多媒体应用设计师 软件评测师
嵌入式系统设计师 电子商务设计师
信息安全工程师
 

本网站所有产品设计(包括造型,颜色,图案,观感,文字,产品,内容),功能及其展示形式,均已受版权或产权保护。
任何公司及个人不得以任何方式复制部分或全部,违者将依法追究责任,特此声明。
本站部分内容来自互联网或由会员上传,版权归原作者所有。如有问题,请及时联系我们。


工作时间:9:00-20:00

客服

点击这里给我发消息 点击这里给我发消息 点击这里给我发消息

商务合作

点击这里给我发消息

客服邮箱service@rkpass.cn


京B2-20210865 | 京ICP备2020040059号-5 |京公网安备 11010502032051号 | 营业执照 | Copyright ©2000-2023 All Rights Reserved 软考在线版权所有