数据结构的基本知识
目录
一,数据结构的基本概念
1,数据
数据:是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理,存储,显示的符号集合。数据可以是数值类型(如整型,实型.....)也可以是非数值类型(如:声音,图像,视频......)
2,数据元素
数据元素:是组成数据的、有一定意义的基本单位,在计算机中通常作为整体处理。也被称为记录。数据元素就是数据的基本单位,它是⼀个完整的数据内容。(如:小学生,中学生,大学生都是学生的数据元素)
3,数据项
一个数据元素可以由若干个数据项组成,它是数据元素的单元(比如:数据元素手机有屏幕,按键等多种数据项)。
注:数据项是数据不可分割的最小单位。
4,数据结构
数据结构:是相互之间存在一种或多种特定关系的数据元素的集合。
二,逻辑结构和物理结构
1,逻辑结构
1.1,概念
逻辑结构:是指数据对象中数据元素之间的相互关系。(先后、层次、从属、邻接)
1.2,分类
集合结构、线性结构、树型结构、图型结构。
1.3,分类说明
集合结构: 所有的数据元素之间没有必然的联系,只是有共同的特点、属性 。
线性结构: 数据元素之间具有⼀定的先后顺序 。
树型结构: 数据元素之间是层次⽅式来表⽰关系,⼀定的包含、从属。
图型结构: 数据与数据之间有多种关系存在。
2,存储结构
2.1,概念
存储结构:是指数据的逻辑结构在计算机中的存储形式。
2.2,分类
顺序存储,链式存储。
2.3,分类说明
顺序存储结构:是把数据存放在地址连续的存储单元里,各个元素依次存储。其数据间的逻辑关系和物理关系是一致的。
链式存储结构:是把数据元素存放在任意的存储单元里,这组存储单元可以是连续的,也可以是不连续的。数据元素的存储关系并不能反映其逻辑关系,因此需要用一个指针存放数据元素的地址,这样通过地址就可以找到相关联数据元素的位置。
三,算法
1,概念
算法:算法是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一个或多个操作。
算法可以不用依赖计算机语言。
2,好算法的判定
① 正确性:能否正确的解决问题
② 效率:消耗时间多少,消耗空间多少
③ 编程:算法的结构要好,易于理解、编码和调试
3,时间复杂度
概念:时间复杂度是指执行这个算法所需要的计算工作量
时间频度:一个算法花费的时间与算法中语句的执行次数成正比,执行次数越多,花费的时间就越多。一个算法中的执行次数称为语句频度或时间频度。记为T(n)
⼤O表⽰法:让n 趋近⽆穷⼤的表⽰⽅式,只留下最⼤次幂
4,空间复杂度
概念:空间复杂度是指执行这个算法所需要的内存空间。即统计 实现算法所需要的空间⼤⼩ S(n)