程序员

数据结构 第01局:绪论

2018-12-25  本文已影响23人  dotNET之家

总目录


前言

本文介绍数据结构基本概念。
一、数据结构概念
二、抽象数据类型
三、算法基本概念

环境

1.语言:C语言
2.参考书:《数据结构(C语言版)》

一、数据结构概念

数据(data):对客观事物的符号表示。例如:数据库中的数据。

数据元素(data element):数据的基本单位。例如:表的记录。

数据项(data item):数据的最小单位,一个数据元素由若干个数据项组成。例如:记录的字段。

数据对象(data object):性质相同的数据元素的集合,是数据的子集。例如:表。

数据结构(data structure)

(1).概念:相互之间存在一种或多种特定关系的数据元素的集合。
(2).结构:数据元素之间的关系称为结构,有下列4类基本结构:
(3).表示:数据结构是一个二元组
    Data_Structure = (D,S)
  其中:D是数据元素的有限集,S是D上关系的有限集。
逻辑结构:结构定义中的关系描述的是数据元素的逻辑关系,因此又称为数据的逻辑结构。

物理结构:结构在计算机中的表示(映像)称为数据的物理结构或存储结构。

位(bit):计算机中表示信息的最小单位。例如:二进制数的一位。

结点(node):由若干位组合起来形成的位串称为结点或元素。例如:8位二进制数表示字符。

顺序映像:借助元素在存储器中的相对位置来表示数据元素之间的逻辑关系。对应顺序存储结构。

非顺序映像:借助指示元素存储地址的指针(pointer)表示数据元素之间的关系。对应非顺序存储结构。

二、抽象数据类型

数据类型(data type):是值的集合和定义在这个值集上的一组操作的总称。例如:C语言中整型变量,
其值集为某个区间上的整数,定义在其上的操作为加、减、乘、除和取模等算数运算。

原子类型:其值不可分解。例如:C语言中基本类型(整型、字符型等)、指针类型、空类型。

结构类型:其值可分解,由若干元素按某种结构组成。例如:数组。

抽象数据类型(Abstract Data Type,简称ADT)

(1)概念:一个数学模型以及定义在该模型上的一组操作。
(2)类型:抽象数据类型也是由值域和定义在该值域上的一组操作组成。按值的不同特性,分为以下3种类型:
(3).表示:抽象数据类型是一个三元组
    (D,S,P)
  其中:D是数据对象,S是D上关系集,P是对D的基本操作集。
(4)格式:

其中,数据对象和数据关系的定义用伪码描述,基本操作的定义格式为:

(5)抽象数据类型三元组的定义:

多形数据类型:指其值的成分不确定的数据类型。例如:上图中的Triplet,元素e1,e2,e3可以是整型或字符或字符串。

三、算法基本概念

算法

(1)概念:算法(algorithm)是对特定问题的求解步骤的一种描述。
(2)特性:
(3)设计要求:
(4)算法效率度量:暂略...(此知识点会在后续文章介绍,写过一些算法后,理解容易些)

后语

本文是对《数据结构(C语言版)》绪论篇概念的总结,后续会用C语言将书本内容作实现,下篇介绍线性表,待续...


总目录

上一篇下一篇

猜你喜欢

热点阅读