说明:这是《大话数据结构》^1的学习笔记,其课件与源代码:->戳这里<-
密码:666
[toc]
数据结构绪论
数据结构起源
意义与作用
数据结构是一门研究数值计算的程序设计问题中的操作对象,以及他们之间的关系和操作等相关问题的学科
起源
1968年,美国的高纳德(Donald E. Knuth)教授在其所写的《计算机程序设计与艺术》第一卷《基本算法》中,较系统地阐述了数据的逻辑结构和存储结构及其操作,开创了数据结构的课程体系,同年,“数据结构”作为一门独立课程,在计科学位课程中开始出现。
基本概念和术语
数据
定义:是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别并输入给计算机处理的符号集合
数据即符号,但这些符号要满足以下两个前提:
可以输入到计算机中
能被计算机程序处理
对于整型、实型等数值类型,可以进行数值计算
对于字符数据类型,就要进行非数值的1处理。而声音、图像、视频等其实是可以通过编码手段转换成字符类型处理的
数据元素
定义:数据元素,是组成数据的,具有一定意义的基本单位,在计算机中通常作为整体处理,也被称为记录
数据项
一个数据元素可以由若干个数据项组成,数据项是数据不可分割的最小单位
数据对象
是性质相同的数据元素集合,是数据的子集
数据结构
相互间存在一种或者多种特定关系的数据元素的集合
逻辑结构与物理结构
逻辑结构
指数据对象中数据元素之间的相互关系
分为以下四种:
1. 集合结构
数据间元素除了同属于一个集合外没有其他关系
2. 线性结构
线性结构中数据元素之间是一对一的关系
3. 树形结构
数据元素之间存在一对多的关系
4. 图形结构
数据元素是多对多的关系
物理结构
数据的逻辑结构在计算机中的储存形式
1. 顺序存储结构
将数据元素存放在地址连续的储存单元中,其数据间的逻辑关系与物理关系是一致的
2. 链式存储结构
将数据存放在任意存储单元,这组存储单元可以连续,也可以不连续
数据类型
指一组性质相同的值的集合及定义在此集合上的一些操作的总称
数据类型定义
类型用来说明变量或表达式的取值范围和能进行的操作
在c语言中,数据类型分为两类:
原子类型
是不可再分的基本类型,包括整型、实型、字符型等。
结构类型
由若干个类型结合而成,是可以再分解的。例如整型数组是由若干个整型数据组成的。
抽象数据类型(Abstract Data Type,ADT)
抽象:抽取物体具有的普遍性联系
抽象数据类型(Abstract Data Type,ADT): 一个数学模型及定义在该数学模型上的一组操作
抽象数据类型体现了程序设计中问题的分解、抽象和信息隐藏的特点
ADT概括标准格式
1 | ADT ADTNAME |
- 本文作者: 汤圆
- 本文链接: https://littlesun.cloud/2021/07/10/数据结构绪论/
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!