数据结构与算法基础(1)-- 绪论 (上)
第一部分 --- 前言
第二部分 --- 数据结构的研究内容
1.抽离出数学模型 2.根据数学模型设计算法解决问题 3.编程,调试,运行
2.上面的可操作对象指的是计算机可操作的变量
3.数据之间存在着非线性关系和线性关系,而不同关系下又有若干不同的数据结构
比如线性关系下的线性表,非线性关系下的树形结构,网状结构
导航就被转换为了网状结构中的两点之间的最短路径求解
第三部分 --- 基本概念和术语
1.数据,数据元素,数据项与数据对象
每个数据都由若干个数据元素组成 --- 数据元素是数据的基本单位
每个数据元素都由若干个数据项组成 --- 数据项是数据元素的基本单位
比如一个对象中的成员变量
数据对象是数据的一个子集,它是由数据中数性质相同的数据元素组成的集合
2.数据结构
数据元素之间不是孤立存在的,它们之间有着一种或多种关系,这种关系被称为结构
而数据结构就是这些有着关系(结构)的数据元素构成的集合
1.逻辑关系指的是true,false关系
2. 映像的意思是数结构(数据元素之间的关系在计算机内存中的表示(投影))
3.逻辑结构
1.一个结点只有一个直接前趋和一个直接后继的意思是:一个结点前面最多只有一个结点,后面最多也只有一个结点
1.非线性结构除了一对一还可能出现一对多,多对一,多对多的情况
4.存储结构
1.顺序存储结构
链式存储结构中的一个节点由数据域和指针域组成,数组域中存储节点维护的数据,指针域中存储一个指向下一个节点的坐标(这是单向的情况,如果要双向的还需要存储一个指向上一个节点的坐标)