【学习总结】《大话数据结构》- 第1章-数据结构绪论
2023-09-14 09:00:39 时间
【学习总结】《大话数据结构》- 总
启示:
-
数据结构:相互之间存在一种或多种特定关系的数据元素的集合。
目录
========================================
1.1 开场白
- 一些可以略过的场面话...
========================================
1.2 你数据结构怎么学的?
- 举了一个在实时排队系统中使用队列结构而不是数组或者数据库的栗子
- 说明数据结构的重要性
========================================
1.3 数据结构起源
- 数据结构发展历程
- 1986年:作为一门独立课程在CS学位课程中出现
- 70年代初,结构程序设计成为程序设计方法学的主要内容,数据结构在程序设计中占据重要地位
========================================
1.4 基本概念和术语
-
程序设计=数据结构+算法
-
数据:
-
描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别、并输入给计算机处理的符号集合。
-
(包括数值、声音、图像、视频等各种符号)
- ### 符合两个条件:
- 可以输入到计算机中
- 能被计算机程序处理
-
数据元素:
-
组成数据的、有一定意义的基本单位,在计算机中通常作为整体处理。也被称为记录。
-
(人类的数据元素:人)
(禽类的数据元素:鸡鸭鹅)
-
数据项:
-
一个数据元素可以由若干数据项组成。数据项是数据不可分割的最小单位。
-
(人元素:眼耳鼻嘴手,或者姓名、年龄、性别、出生地、联系电话等)
-
数据对象(简称为数据):
-
性质相同的数据元素的集合,是数据的子集。
-
(性质相同--指的是数据元素具有相同数量和类型的数据项)
(比如人--都有姓名、生日、性别等相同的数据项)
-
数据结构:
-
结构:不同数据元素之间不是独立的,而是存在特定的关系,这些关系称为结构。
-
数据结构:是相互之间存在一种或多种特定关系的数据元素的集合。
-
========================================
1.5 逻辑结构和物理结构
-
按照视点不同,将数据结构分为逻辑结构和物理结构。
-
逻辑结构:
指数据对象中数据元素之间的相互关系。分为四种:
- ### 1-集合结构:数据元素除了同属于一个集合外,相互之间没有其他关系。
(各个元素是平等的)
- ### 2-线性结构:数据元素之间是一对一的关系。
- ### 3-树形结构:数据元素之间存在一对多的层次关系。
- ### 4-图形结构:数据元素之间是多对多的关系。
- ### 可见:逻辑结构是针对具体问题的,是为了解决某个问题,在对问题理解的基础上,选择一个合适的数据结构表示数据元素之间的逻辑关系。
-
物理结构(存储结构):
指数据的逻辑结构在计算机中的存储形式。分为两种:
(数据的存储结构应正确反映数据元素之间的逻辑关系)
-
1-顺序存储结构<排队>
把数据元素存放在地址连续的存储单元里,其数据间的逻辑关系和物理关系是一致的。
-
2-链式存储结构<叫号不排队>
把数据元素存放在任意的存储单元里,这组存储单元可以是连续的,也可以是不连续的。存储关系不反映其逻辑关系。
-
逻辑结构是面向问题的,而物理结构是面向计算机的,其基本目标就是将数据结构及其逻辑关系存储到计算机的内存中。
========================================
1.6 抽象数据类型
-
数据类型:
指一组性质相同的值的集合及定义在此集合上的一些操作的总称。
-
抽象数据类型(Abstract Data Type, ADT)
指一个数学模型及定义在该模型上的一组操作。
-
描述抽象数据类型的标准格式:
========================================
1.7 总结回顾
-
相关概念:
-
分类:
========================================
1.8 结尾语
END
相关文章
- 目标检测模型学习笔记
- 算法学习–整型转字符串
- Java 基础学习(3)
- 大学计算机专业的同学是怎么学习的?
- 单链表的各种实现,绝对全(学习数据结构必看!)
- 还未入职,这位将来的博导为学生规划了一条高效学习之路
- 生信学习小组Day5 -数据结构(L)
- 生信星球学习小组-Day5学习笔记--R语言数据结构
- 【Redis 系列】redis 学习十五,redis sds数据结构和底层设计原理
- MySQL字符集学习
- 学习小组Day5笔记-R数据结构
- 学习小组Day5笔记-秦瑶 数据结构
- 数据结构学习—树(1)
- Java数据结构学习笔记之三Java数据结构与算法之队列(Queue)实现详解编程语言
- 数学基础对学习数据结构的影响
- 学习Oracle开发技术,实现一流IT技能(oracledev)
- 深度学习嵌入式Linux系统(学习嵌入式linux)
- 学习开发,掌握CGEL Linux(cgellinux)
- 轻松学习Linux Git指令(linuxgit指令)
- 号外! 大维度机器学习也有计算框架了
- 使用安装 Redis 并学习其使用技巧(redis的安装)
- 深入学习Redis,了解数据结构存储(学习redis书籍)
- 学习Redis前备知识网络编程和数据结构(学redis之前要学什么)
- 学习Oracle DCL语言掌握安全管理基础(oracle dcl语言)
- LinkedList学习示例模拟堆栈与队列数据结构
- Lua学习笔记之数据结构