码迷,mamicode.com
首页 > 其他好文 > 详细

大话数据结构

时间:2017-11-21 23:53:22      阅读:183      评论:0      收藏:0      [点我收藏+]

标签:步骤   链式   二义性   没有   顺序存储结构   描述   存储结构   数据   产生   

数据结构按照视点的不同可分逻辑结构和物理结构。

逻辑结构:

1.集合结构

2.线性结构

3.树形结构

4.图形结构

物理结构:

1.顺序存储结构

2.链式存储结构

算法定义:

算法是解决特定问题求解步骤的 描述 ,在计算机中表现为指令的有限序列,并且每条指令表示一个或多个操作。

算法的5个基本特性:输入、输出、有穷性、确定性和可行性。

可行性和确定性

可行性:算法的每一步都必须是可行的,也就是说,每一步都能通过执行有限次数完成。

确定性:算法的每一步骤都具有确定的含义,不会出现二义性。算法在一定条件系,只有一条执行路径,相同的输入只能有唯一的输出结果。算法的每个步骤被精确定义而无歧义。

算法设计的要求

1、正确性

正确性:算法的正确性是指算法至少应该具有输入、输出和加工处理无歧义性、能正确反映问题的需求、能够得到问题的正确答案。

正确性可分四个层次

(1) 算法程序没有语法错误

(2) 算法程序对于合法的输入数据能够产生满足要求的输出结果

(3) 算法程序对于非法的输入数据能够得出满足规格说明的结果

(4) 算法程序对于精心选择的,甚至刁难的测试数据都有满足要求的输出结果

层次4是最困难的,我们几乎不可能逐一验证所有的输入都得到正确的结果。因此算法的正确性在大部分情况下都不可能用程序来证明,而是用数学方法证明的。证明一个复杂算法在所有层次上都是正确的,代价非常昂贵。所以一般情况下,我们把层次3作为一个算法是否正确的标准。

2. 可读性

3. 健壮性

当输入数据不合格时,算法也能做出相关处理,而不是产生异常或莫名奇妙的结果。

这一点与正确性的第三个层次相似。区别在于健壮性体现在输入不合格数据时,不至于把程序搞挂。

4. 时间效率高和存储量低

算法效率的度量方法

 

大话数据结构

标签:步骤   链式   二义性   没有   顺序存储结构   描述   存储结构   数据   产生   

原文地址:http://www.cnblogs.com/BinBinStory/p/7875587.html

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