没有合适的资源?快使用搜索试试~ 我知道了~
第一章绪论1.1.3 数据的存储结构数据的逻辑结构是软件设计人员从逻辑关系的角度观察和描述数据,而为了在计算机中实现对数据的操作,还需要按某种方式在计算机中表示
资源详情
资源评论
资源推荐
1
第一章 绪 论
电子信息学院
王文伟
WangWenwei,Dr.‐Ing.
Tel:189‐71562600
Email:wwwang@aliyun.com
课程
QQ
群
:
珞珈
EIS
数据结构与算法,
668792335
第一章 绪论
2
TableofContents
电子信息学院
本
章
位
置
本章是整个课程
的绪论,将讨论
数据结构与算法
分析中重要的基
本概念,如数据、
数据类型、数据
结构、算法等,
以及介绍算法分
析的基本方法。
第1章绪论
第2章 C++编程基础
第3章 遍历、迭代与递归
第4章 字符串
第5章 排序算法
第6章 线性表
第7章 栈与队列
第8章 数组和广义表
第9章 树和二叉树
第10章图
第11章 查找算法
第一章 绪论
3
TableofContents
1.0 简介
1.1 数据结构的基本概念
1.2 算法与算法分析
>>>C#编程基础
与数据集合类型
电子信息学院
第一章 绪论
4
1.0Introduction
计算机应用领域迅速扩展,计算机技术日益重要。
软件设计是计算机学科多个领域的核心和主体任务。
软件设计时要考虑的首要问题是数据的表示、组织和处理
方法。数据结构设计和算法设计是软件系统设计的核心。
“数据结构十算法=程序”。数据结构与算法探讨如何构
建描述现实世界实体的计算模型并实现其操作。
Niklaus Wirth:
Data
structure
Algorithm Program
第一章 绪论
5
软件开发的过程
系统分析
系统实现
系统维护
系统设计
系统设计
确定系统所要实现的功能
和达到的目标
确定实现并生成系统的方案
编码、调试
系统修整完善
第一章 绪论
6
数据结构与算法的角色
Niklaus Wirth:
Algorithm
Data
structure
Program
• 为计算机处理问题编
制一组指令集
程序设计
• 处理问题的策略
算法
• 问题的数学模型
数据结构
算法与数据
结构探讨如
何构建描述
现实世界实
体的计算模
型并实现其
操作。
2
第一章 绪论
7
1.1数据结构的基本概念
数据结构是一门讨论“描述现实世界实体的
数学模型及其操作在计算机中如何表示和实
现”的学科。
1.1.1数据类型与数据结构
1.1.2数据的逻辑结构
1.1.3数据的存储结构
1.1.4数据的操作
第一章 绪论
8
1.1.1数据类型与数据结构
数据(data) :
数据是计算机程序的处理对象,它可以是任何能
输入到计算机的符号集合(数据是以多种形式呈
现的信息),例如描述客观事物数量特征的数值
数据以及名称特性的字符数据。
数据元素(dataelement):
数据的基本单位是数据元素,它是表示一个事物
的一组数据,有时又称为数据结点。通常在逻辑
上作为一个整体进行考量和处理。
数据项(dataitem/field):
一个数据元素可能分成若干成分,构成数据元素
的某个成分称作数据元素的数据项。数据项是数
据元素的基本组成单位,有时又称为数据域(data
field)。
第一章 绪论
9
数据项是数据结构中讨论的最小单位。
描述一个学生的数据元素由多个域构成,
其中每个域称为一个“数据项”。
称之为组合项
年月日
姓 名学 号班 号性别出生日期入学成绩
原子项
数据元素与数据项(以Student为例)
第一章 绪论
10
高级程序语言中的数据类型
在用高级程序语言编写的程序中,必须对程
序中出现的每个变量、常量或表达式,明确
说明它们所属的数据类型。
主流是强类型语言
例如,C语言中的基本数据类型有:
字符型 char、整型 int 和 实型(浮点
型 float和双精度型 double)
第一章 绪论
11
数据类型与数据结构的意义示例
int类型
定义:数据对象,如:3,5,7
运算:3+7=10(方便运算,高效,易验证)
DateTime类型
定义:dt1,dt2
运算: dt1‐ dt2=dt3 (易处理,高效,易验证)
)
某数据结构(类型)
定义:数据对象,如: ds1,ds2
运算: ds1∩ds2=ds3 (易处理,高效,易验证)
第一章 绪论
12
数据类型的定义
数据类型(datatype)是一个“值”的集合和
定义在此集合上的 “一组操作” 的总称。它
定义了数据的性质、取值范围以及对数据所能
进行的各种操作。例如,C++语言中整数类型
int32的值域是{‐2
31
,…,‐2,‐1,0,1,2,…,
2
31
‐1},对这些值进行的操作包括加、减、乘、
除、求模、相等或不等比较操作或运算等。
对程序员而言,各种语言中的整数类型基本上是一
样的,因为它们的数学特性相同。
从这个意义上可称“整数” 是一个抽象数据类型。
3
第一章 绪论
13
数据类型与抽象数据类型
高级程序设计语言都提供了一些基本数据类型,这些基本
数据类型在数据处理程序中应用得最为频繁,但是它们往往不能
满足程序设计中的所有需求,这时可以利用基本类型设计出各种
复杂的复合数据类型,称为自定义数据类型。自定义数据类型要
声明一个“值”的集合和定义在此集合上的 “一组操作”。
计算机指令代码本身也是数据,可以为不同的代码片段
(函数或过程)划分类型。一些高级编程语言中引入委托或函
数对象等类型,用以表达特定的函数数据类型。
数据类型、变量及其可能的值构成程序设计的三个
基本要素,变量是一块命名的内存空间,可以也只能
存储由数据类型规定的值。
第一章 绪论
14
数据类型 =>抽象数据类型
为了描述更广泛的数据实体,数据结构和
算法描述中更多地使用抽象数据类型(Abstract
DataType,ADT):概念意义上的类型和这个
类型上的逻辑操作集合。
狭义的数据类型指的是程序设计语言支持的数据类型;
而抽象数据类型是数据与算法在较高层次的描述中用
到的概念,是指一个概念意义上的类型和这个类型上
的逻辑操作集合。最终演变为在常规数据类型支持下
用户新设计的高层次数据类型。抛开细节的数据类型
第一章 绪论
15
抽象数据类型
(
Abstract Data Type 简称
ADT)
是指一个数学模型以及定义在该模型上的一组操作。
抽象数据类型有两个重要特征:
“数据抽象” 和“数据封装”
第一章 绪论
16
数据抽象与数据封装
用ADT描述程序处理的实体时,强调
的是数据的本质特征、其所能完成的功
能以及它和外部世界的接口(即外界使
用它的方法)。- 数据抽象
将数据实体的外部特性和其内部实现
细节分离,并且对外部用户隐藏其内
部实现细节。 ‐ 数据封装
第一章 绪论
17
抽象数据类型的描述方法
ADT =(D,S,P)
其中: D 是数据对象,
S 是 D 上的关系集,
P 是对 D 的基本操作集。
数据对象
是个特定的数据子
集,(一起)用来表示实体的特性。
第一章 绪论
18
ADT 抽象数据类型名称{
数据对象:〈数据对象的定义〉
数据关系:〈数据关系的定义〉
基本操作:〈基本操作的定义〉
} ADT 抽象数据类型名称
其中基本操作的定义格式为:
基本操作名(参数表)
初始条件:〈初始条件描述〉
操作结果:〈操作结果描述〉
抽象数据类型的描述方法(II)
剩余13页未读,继续阅读
半清斋
- 粉丝: 55
- 资源: 322
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 电子设计竞赛的单相不间断电源设计
- cutcamera1715961370938.png
- 基于MATLAB的图像处理课程设计报告.doc
- tensorflow-gpu-2.6.0-cp38-cp38-manylinux2010-x86-64.whl
- mmexport1715960553858.png
- tensorflow-gpu-2.6.0-cp37-cp37m-manylinux2010-x86-64.whl
- 通过 .NET 应用程序中的源代码查找 SQL 注入
- 电子设计竞赛2007年B题 无线识别装置.doc
- Wox全局搜索工具,一款win下的全局搜索软件
- 使用高级集群管理 (ACM) 模板来管理用户、组和命名空间
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0