学习-数据结构-绪论

数据结构

1.概括地说,数据结构描述现实世界实体的数学模型(非数值计算)及其上的操作在计算机中的表示和实现

1.2 基本概念

1.数据与数据结构

数据:所有能被输入到计算机中,且被计算机处理的符号的集合,数据是计算机操作对象的总称,是计算机处理的信息的载体。

数据元素:数据中的一个“个体”,数据结构中讨论的基本单位。

数据项:数据结构中讨论的最小单位。数据元素是数据项的集合。如下图出生日期是数据项中的组合项。

数据结构:带结构的数据元素的集合。如下图的示例:

数据的逻辑结构可归结为以下四类:

数据结构的形式定义为:

数据结构是一个二元组

     Data_Structures = (D,S) , 其中D是数据元素的有限集,S是D上关系的有限集。

2.数据的存储结构:逻辑结构在存储器中的映像。

数据元素的映像方法:用二进制(bit)的位串表示数据元素。如:(321)10 = (501)8 = (101000001)2

关系的映像方法:

在不同的编程环境中,存储结构可有不同的描述方法,当用高级程序设计语言进行编程时,通常可用高级编程语言中提供的数据类型描述之。

3.数据类型:在用高级程序语言编写的程序中,必须对程序中出现的每个变量、常量、或表达式,明确说明他们所属的数据类型。数据类型是一个值的集合和定义在此集合上的一组操作的总称。

抽象数据类型(ADT):指一个数学模型以及定义在此数学模型上的一组操作。

抽象数据类型可用(D,S,P)三元组表示:D是数据对象,S是D上的关系集,P是对D的基本操作集。

4.算法:算法是为了解决某类问题而规定的一个有限长的操作序列。

算法的五个重要特性:

1.有穷性:算法中的每个步骤都能在有限时间内完成。

2.确定性:对于每种情况下所执行的操作,在算法中都有确切的规定,并且在任何条件下,算法都只有一条执行路径。  

3.可行性:算法中所有操作都必须足够基本,都可以通过已经实现的基本操作运算有限次实现。 

4.有输入:作为算法加工对象的量值,通常体现为算法的一组变量,有的输入可能被嵌入算法之中。

5.有输出:与“输入”有确定关系的量值,是算法进行信息加工得到的结果,这种确定的关系为算法的功能。

算法的设计原则:

1.正确性:算法应当满足特定的“规格说明”方式给出的需求。

2.可读性:算法应该易于人的理解。

3.健壮性:当输入的数据非法时,算法应该作出反映,而不是产生莫名其妙的输出结果。

4.高效率与低存储量需求:效率指的是算法执行的时间,存储量指的是算法执行过程中所需的最大存储空间。

算法效率的衡量方法和准则:

1.事后统计法:

缺点:1.必须执行程序,2.其它因素掩盖算法本质。

2.事前估算法:

算法 = 控制结构 + 原操作(固有数据类型的操作)

算法的执行时间和原操作执行次数之和成正比。

算法的存储量包括:

1.输入数据所占的空间

2.程序本身所占的空间

3.辅助变量所占的空间

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值