目录
1.开场白
如果你交给某个人一个程序,你将折磨他一整天;如果你教某人如何编写程序,你将折磨他一辈子。 ————《大话数据结构》
首先问大家一个问题,我们为什么学习数据结构?从小的方面讲起吧!首先你要学习这门课程,你要进行期末考试,你可能学习是为了不挂科;也许你选择考研,考研是一定要求学好数据结构的;也许你是为了以后的工作你学会了算法写出更好的程序,赚更多的钱;最好的也就是无谓所有的原因,而简单的喜欢这些东西,这是最好不过了!
总而言之,无论是为了考试,考研,学位,工作,热爱,我们都需要用心去学习!
2.数据结构的起源
早期人们把计算机理解成数值计算工具,就是把计算机用来计算的,所以计算机解决问题就是将具体问题抽象出一个适当的数据模型,设计出一个算法,然后编写程序,最后得到一个软件,可是现实生活中,我们更多解决的不是数值计算的问题,而是需要跟科学的手段的帮助,才能更好的处理问题。所以
数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及它们之间的关系和操作等相关问题的学科。
3.基本概念和术语
“巧妇难为无米之炊“,计算机也是一样的,没有数据,也就是个摆设。
(1)数据
数据是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输出给计算机处理的符号集合。
数据包括数值类型和非数值类型,数值类型比如整型,实型等,非数值类型包括图片,音频视频等,我们需要编译转码成字符型。
(2)数据元素
通俗来说,在人类中,人就是数据元素;再者说,在畜禽类中,牛,马,羊,猪,鸡,鸭就是数据元素。
所以很清晰,数据元素就是一个整体中一个单独的个体。但在计算及处理时,又会作为整体处理。
(3)数据项
一个数据元素是由若干个数据项组成的。
就好比一个人有眼睛,鼻子,嘴巴,手,脚等数据项,也可以有姓名,年龄,性别,家庭住址,联系电话,等数据项。
数据项是数据不可分割的最小单位。
(4)数据对象
是性质相同的数据元素的集合,是数据的子集
(5)数据结构
不同数据元素之间是独立的,而是存在特定的关系,我们将这些关系称为结构。
数据结构:是相互之间存在一种或多种特点关系的数据元素的集合。
4.逻辑结构和物理结构
(1)逻辑结构
指的是对象之间数据元素之间的关系。分为四种:
- 集合结构
- 线性结构
- 树形结构
- 图形结构
(2)物理结构
说完逻辑结构,就来看物理结构,物理结构就是存储结构,也就是在数据的逻辑结构在计算机中的存储形式。
- 顺序存储结构
-
链式存储结构
5.数据类型
抽象数据类型:抽象数据类型体现了程序设计中问题的分解,抽象和信息隐藏的特性。
抽象数据类型:数据对象
数据元素的关系
基本操作
6.结尾语
第一章的绪论到此为止吧!键盘用着真的很不舒服,多下大家支持,下期见吧!