ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

《大话数据结构》学习笔记——第一章 数据结构绪论

2020-10-27 02:31:58  阅读:172  来源: 互联网

标签:绪论 大话 元素 抽象数据类型 集合 数据结构 数据 结构


第一章 数据结构绪论

1.1 - 1.3 小结主要内容一句话可以总结:程序设计 = 数据结构 + 算法

1.4 基本概念与术语

(1)数据:是描述事物的客观符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合。

本书所说的数据,其实就是符号,这些符号满足两个前提:

  • 可以输入到计算机中

  • 能被计算机程序处理

(2)数据元素:是组成数据的、有一定意义的基本单位,在计算机中通常作为整体处理。及被称作为记录。

可以理解为数据库中的一条记录。

(3)数据项:一个数据元素可以由若干个数据项组成。数据项是数据不可分割的最小单位。

可以理解为数据库中一条记录中的某一个字段,不能再被细分了。但是真正在讨论问题时,数据元素才是数据结构中建立数据模型的着眼点,即讨论一部电影时,大家都是讨论电影中的一个角色这种“数据元素”,而不会去讨论角色的姓名、年龄等“数据项”。

(4)数据对象:是性质相同的数据元素的集合,是数据的子集。

(5)数据结构:不同数据元素之间不是孤立的,而是存在特定的关系,我们将这些关系成为结构。数据结构就是:相互之间存在一种或多种特定关系的数据元素的集合。

1.5 逻辑结构与物理结构

(1)逻辑结构:是数据对象中数据元素之间的相互逻辑关系。一共有四种逻辑结构:集合结构、线性结构、树形结构、图形结构。

  • 集合结构:集合结构中的数据元素除了同属一个集合之外,没有其他关系。

  • 线性结构:线性结构中数据元素之间是一对一的关系。

  • 树形结构:树形结构中的数据元素之间存在一种一对多的层次关系

  • 图形结构:图形结构的数据元素是多对多的关系。

(2)物理结构:是数据的逻辑结构在计算机中的存储形式。这里说的存储主要是指内存,而不是硬盘、软盘、光盘等。一共有两种物理结构:顺序存储和链式存储。

  • 顺序存储结构:是把数据元素存放在地址连续的存储单元中,其数据间的逻辑关系和物理关系是一致的。

  • 链式存储结构:是把数据元素存储在任意的存储单元里,这组存储单元可以是连续的,也可以是不连续的。数据元素的存储关系并不能反映其逻辑关系,因此需要用一个指针存放数据元素的地址,这样可以通过地址找到相关联的数据元素的位置。

1.6 抽象数据类型

(1)数据类型:是指一组性质相同的值的集合及定义在此集合上的一些操作的总称。数据类型是按照值的不同进行划分的。在高级语言中,每个变量、常量和表达式都有各自的取值范围。类型就用来表明变量或表达式的取值范围和所能进行的操作。

(2)抽象:是指抽取出事物具有的普遍性的本质。它是抽出问题的特征而忽略非本质的细节,是对具体事务的概括。抽象是一种思考问题的方式,他隐藏了繁杂的细节,只保留实现目标所必需的信息。(有点像接口)

(3)抽象数据类型(Abstract Data Type,ADT):是指一个数据模型及定义在该模型上的一组操作。抽象数据类型的定义仅取决于它的一组逻辑特性,而与其在计算机内部如何表示和实现无关。(有点像抽象类,只是抽象类的方法都是实现了的方法,而抽象数据类型只定义了逻辑操作,并没有实现这些操作。)抽象数据类型体现了程序设计中问题分解、抽象和信息隐藏的特性。

本书对抽象数据类型的标准格式规范如下:

ADT 抽象数据类型名
Data
    数据元素之间的逻辑关系的定义
Operation
    操作1
        初始条件
        操作结果描述
    操作2
        ......
    操作n
        ......
endADT

1.7 总结

标签:绪论,大话,元素,抽象数据类型,集合,数据结构,数据,结构
来源: https://www.cnblogs.com/yuyr757/p/13881188.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有