版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
“”数据结构1“”数据结构1知识导入全程目标数据结构的基本概念逻辑结构物理结构运算结构数据结构的基本实现堆栈队列链表二叉树2知全程目标数据结构的基本概念2知识讲解数据结构的基本概念数据结构是相互之间存在一种或多种特定关系的数据的集合数据结构是计算机存储、组织数据的方式数据结构的选择直接影响计算机程序的运行效率(时间复杂度)和存储效率(空间复杂度)计算机程序设计=算法+数据结构数据结构的三个层次抽象层——逻辑结构结构层——物理结构实现层——运算结构3知数据结构的基本概念数据结构是相互之间存在一种或多种特定关系知识讲解逻辑结构集合结构(集)结构中的数据元素除了同属于一个集合外没有其它关系4知逻辑结构集合结构(集)4知识讲解逻辑结构线性结构(表)结构中的数据元素具有一对一的前后关系5知逻辑结构线性结构(表)5知识讲解逻辑结构树型结构(树)结构中的数据元素具有一对多的父子关系6知逻辑结构树型结构(树)6知识讲解逻辑结构网状结构(图)结构中的数据元素具有多对多的交叉映射关系7知逻辑结构网状结构(图)7知识讲解物理结构顺序结构结构中的数据元素存放在一段连续的地址空间中8知物理结构顺序结构8知识讲解物理结构顺序结构随机访问方便,空间利用率低,插入删除不方便9知物理结构顺序结构9知识讲解物理结构链式结构结构中的数据元素存放在彼此独立的地址空间中每个独立的地址空间称为节点节点除保存数据外,还需要保存相关节点的地址10知物理结构链式结构10知识讲解物理结构链式结构插入删除方便,空间利用率高,随机访问不方便11知物理结构链式结构11知识讲解逻辑结构与物理结构的关系每种逻辑结构采用何种物理结构实现,并没有一定之规,通常根据实现的难易程度,以及在时间和空间复杂度方面的要求,选择最适合的物理结构,亦不排除复合多种物理结构实现一种逻辑结构的可能12知逻辑结构与物理结构的关系12知识讲解运算结构创建与销毁分配资源、建立结构、释放资源插入与删除增加、减少数据元素获取与修改遍历、迭代、随机访问排序与查找算法应用13知运算结构创建与销毁13知识讲解数据结构的基本实现堆栈基于顺序表的实现基于链式表的实现队列基于顺序表的实现基于链式表的实现链表双向线性链表的实现二叉树有序二叉树(二叉搜索树)的实现14知数据结构的基本实现堆栈14知识讲解堆栈后进(压入/push)先出(弹出/pop)15知堆栈后进(压入/push)先出(弹出/pop)15知识讲解实现基于顺序表的堆栈初始化空间、栈顶指针、判空判满16知实现基于顺序表的堆栈初始化空间、栈顶指针、判空判满16知识讲解实现基于链式表的堆栈动态分配、栈顶指针、注意判空17知实现基于链式表的堆栈动态分配、栈顶指针、注意判空17知识讲解队列先进(压入/push)先出(弹出/pop)18知队列先进(压入/push)先出(弹出/pop)18知识讲解实现基于顺序表的队列初始化空间、前弹后压、循环使用、判空判满19知实现基于顺序表的队列初始化空间、前弹后压、循环使用、判空判知识讲解实现基于链式表的队列动态分配、前后指针、注意判空20知实现基于链式表的队列动态分配、前后指针、注意判空20知识讲解链表地址不连续的节点序列,彼此通过指针相互连接根据不同的结构特征,将链表分为:单向线性链表单向循环链表双向线性链表双线循环链表数组链表链表数组二维链表21知链表地址不连续的节点序列,彼此通过指针相互连接21知识讲解链表单向线性链表22知链表单向线性链表22知识讲解链表单向循环链表23知链表单向循环链表23知识讲解链表双向线性链表24知链表双向线性链表24知识讲解链表双向循环链表25知链表双向循环链表25知识讲解链表数组链表26知链表数组链表26知识讲解链表链表数组27知链表链表数组27知识讲解链表二维链表28知链表二维链表28知识讲解实现双向线性链表结构模型29知实现双向线性链表结构模型29知识讲解实现双向线性链表插入节点30知实现双向线性链表插入节点30知识讲解实现双向线性链表删除节点31知实现双向线性链表删除节点31知识讲解二叉树树形结构的最简模型,每个节点最多有两个子节点每个子节点有且仅有一个父节点,整棵树只有一个根节点具有递归的结构特征,用递归的方法处理,可以简化算法三种遍历序前序遍历:D-L-R中序遍历:L-D-R后序遍历:L-R-D32知二叉树树形结构的最简模型,每个节点最多有两个子节点32知识讲解二叉树二叉树的一般形式根节点、枝节点和叶节点父节点和子节点左子节点和右子节点左子树和右子树大小和高度(深度)33知二叉树二叉树的一般形式33知识讲解二叉树满二叉树每层节点数均达到最大值所有枝节点均有左右子树34知二叉树满二叉树34知识讲解二叉树完全二叉树除最下层外,各层节点数均达到最大值最下层的节点都连续集中在左边35知二叉树完全二叉树35知识讲解二叉树的存储结构顺序存储从上到下、从左到右,依次存放非完全二叉树需用虚节点补成完全二叉树36知二叉树的存储结构顺序存储36知识讲解二叉树的存储结构链式存储二叉链表,每个节点包括三个域,一个数据域和两个分别指向其左右子节点的指针域37知二叉树的存储结构链式存储37知识讲解二叉树的存储结构链式存储三叉链表,每个节点包括四个域,一个数据域、两个分别指向其左右子节点的指针域和一个指向其父节点的指针域38知二叉树的存储结构链式存储38知识讲解实现有序二叉树有序二叉树亦称二叉搜索树,若非空树则满足:若左子
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论