数据结构的学习笔记第一章绪论

数据结构的学习笔记第一章绪论

1.1数据结构基础概念

1、
数据描述客观事物的数值、字符以及-切能输入到计算机且
能被处理的符号集合。
2、
数据元素数据元素是组成数据的基本单位,是数据集合的个
体,用学籍表里的一-条学生记录理解,虽然学生信息中有姓名、
班级多个属性,通常作为-一个整体考虑和处理,是-一个数据元。
3、
数据对象是性质相同的数据元素的集合,是数据集的一一个子集。
4、
数据结构,是指相互之间存在-种或多种特定关系的数据元素
集合。强调是带有结构的数据元素的集合,数据元素之间的相.
互关系,即数据的组织形式。如同大家熟悉的图书馆,图书馆
是书的集合,但决不是书的随便堆积,而是带有索引结构的分
布存放,数据结构正是注重有结构组织的数据,只有这样,才.
能有效支撑信息快速查找与应用服务。下面给出分别代表表、
树和图基本数据结构的范例。
线性结构:一对一
树结构:一对多
图结构:多对多
5、
数据类型: -组性质相同的值集合以及定义其上的一-组操作的
集合。
抽象是计算机科学的本质技术。抽象数据类型ADT:就是定义
在一个模型.上的- -组操作的集合。其特点是抽象和隐蔽。包括
定义和实现两大方面。定义解决服务层面功能,实现解决怎么.
服务的问题。我们使用书库管理的例子来理解这个问题。用户
通过服务界面实现查书、借书和还书,用户只使用功能,具体
处理过程对用户是封装的,用户也不必关心具体书在哪个书架
. 上的具体实现问题。

1.2数据结构的内容

数据结构的内容,即数据结构研究范围;数据结构注重的是数据元素
之间的相互关系。数据结构的内容包括数据结构的逻辑结构和数据结
构的存储结构及运算集合。

1.2.1四种基本的逻辑结构

集合结构:集合是属于与不属于简单的关系,在此就不讨论.
线性结构:结构中的数据元素之间存在着一对- -的线性关系:如线性表(学籍表)
树形结构:结构中的数据元素之间存在着- -对多的层次关系:如树(学校组织结构图)
图形结构:结构中的数据元素之间存在着多对多的任意关系:如图(网络节点图)

总结:逻辑结构可分为俩类:
线性:线性表、栈、队、字符串、数组、广义表
非线性结构—树、图

1.2.2数据结构的存储结构

是逻辑结构在计算机中的存储映象,也是在计算机中的实现。
逻辑结构和存储结构之间的关系
存储结构是逻辑关系的映象。逻辑结构是数据结构的抽象,存储结构是数据结构的实现,两者综合
起来建立了数据元素之间的结构关系。

数据元素之间关系在计算机中的存储映像

顺序映象(顺序存储结构, 如数组,就是一组连续配置的单元);
非顺序映象(非顺序存储结构,如链表,是一组任意配置的单.元,通过指针连接起来,维持逻辑关系)

1.2.3运算集合

定义在数据集及数据元素关系集上的运算操作集合:插入,删除。。。。。。

1.3算法性能的评价

时间复杂度T(n)

是算法执行时间的度量。算法的执行时间就是算法所有语句的执行次数之和。
[最坏时间复杂度]:是指执行基本操作的最大次数。基本操作时指算法中基
本运算的操作。

空间复杂度S(n)

-般情况下,一个程序在机器上执行时,除了需要寄存本身所用的指令、常数、
变量和输入数据以外,还需要-一些对数据进行操作的辅助存储空间。其中对于输
入数据所占的具体存储量只取决于问题本身,与算法无关,这样我们只需要分析
该算法在实现时所需要的辅助空间单元个数就可以了。若算法执行时所需要的辅
助空间相对于输入数据量而言是个常数,则称这个算法为原地工作,辅助空间为
0(1)。

1.4算法

定义:是规则的有限集合,是为解决特定问题而规定的一- 系列操
作。
特性:有限性、确定性、可行性和输入输出特性。
算法设计的要求:正确性,可读性,健壮性。

猜你喜欢

转载自blog.csdn.net/qq_33950926/article/details/104865623