- 1、本文档共22页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构 重点难点回顾 1 概论 2 线性表 3 栈、队列和串 4 多维数组和广义表 5 树 6 图 7 排序 //7章10部分概念,5个重点 考试不是目的。 学会学习,一生受益无穷! 一、概念 1 、数据的物理结构 四种 主要两种 顺序存储结构 链式存储结构 索引存储结构 :存储信息的同时,建立索引表 散列存储结构:存储地址与其关键字之间存在某种映射 2、语句的频度与算法的时间复杂度 书上的例子与习题是经典常用的:p15,P19 3、队列和栈的特点(联系对比现实生活中) FIFO队列 LIFO 栈:pop,push 队列,栈和串是受限的线性表:两个串p和q,其中q是p的子串,求q在p中首次出现位置的算法称为模式匹配。 4、学会用递归的方法 例:P100,求二叉树t的叶子 ,关键在于理解。 int leaf(bitree t) { //叶子数通过函数值返回 int L,R; if(t==NULL) return 0;//空树的叶子为0 if(t?lchild==NULL t?rchild==NULL) return 1; //树中只有一个点,就是叶子 L=leaf(t?lchild);//求左子树的叶子数(访问左子树) R=leaf(t?rchild);//求右子树的叶子数(访问右子树) return L+R; //叶子数=左右子树叶子数之和(访问根) } //深入体会 5、二叉树的性质 P91,性质1-5,性质5为层次遍历的基础。 性质1 二叉树的第i层上最多有2i-1个结点 性质2 深度为k的二叉树最多有 2k-1个结点 性质3 叶子结点数n0,度2结点数n2,满足n0 = n2 +1 性质4 n节点的完全二叉树的深度为 ?log2n? +1 或 ?log2(n+1)?。 性质5:在完全二叉树中编号为i的结点 (1)若有双亲,则双亲结点编号为?i/2? (2)若有左孩子,则左孩子编号为2i (3)若有右孩子,则右孩子编号为2i+1 6、二叉树与完全二叉树的节点 性质1-性质5的应用 每层最多多少个节点,总共最多多少个节点,n节点至少多少层?即深度,n给定 完全二叉树左孩子、右孩子与双亲编号的关系。 7、链表与顺序表的特点(见第二章PPT) 顺序表的优点: 无需为表示逻辑关系而增加额外的存储空间(物理顺序可反映逻辑关系); 可随机存取任一元素; 方法简单(各种高级语言都有数组类型)。 顺序表的缺点: 插入、删除移动量大 (表尾除外); 空间预(静态)分配,有浪费或不足问题。 单链表的特点: 1 通过保存直接后继元素的存储位置来表示 数据元素之间的逻辑关系; 2 插入删除操作通过修改结点的指针实现; 3 不能随机存取元素。 8、下标加1 整数:i++; 指针:p++; 循环加:i=(i+1)%n; front==(rear+1)% maxsize; //循环顺序队列中判断队满,分别指向队首元素和队尾元素的下一个存储单元 9、连通图、完全有向图、无向图的概念,边数 例: n个顶点无向连通图至少n-1条边; 无向图中,所有顶点的度数之和等于所有边数的2倍; 有向图中,n个顶点的强连通图至少有n条边; 无向图中有n个顶点e条边,则该无向图中所有顶点的入度之和为2e; 设某完全无向图中有n个顶点,则该完全无向图中有n(n-1)/2条边。 10、内部排序的稳定性-稳定概念 直接插入排序?? 堆排序?? 二路归并排序? ?? 冒泡排序 快速排序 希尔排序 归并排序(占用空间多) 直接选择 二、重点难点 1 、线性表采用顺序存储与链式存储的优缺点。 若线性表的总长度基本稳定,且很少进行插入和删除操作,空间变化不大,但要求以最快的速度存取线性表中的元素,则应选用顺序存储结构(顺序表)。 若n个线性表同时并存,并且在处理过程中各表的长度会动态发生变化,则选用链接存储结构(链表)。链表容易实现表容量的扩充,适合表的长度动态发生变化。 应用:城市的设计和规划中,因为一个城市的设计和规划涉及活动很多,需要经常修改、扩充和删除各种信息,才能适应不断发展的需要,故用链表实现。而顺序表的插入、删除的效率低,故不合适。 2、数组 数组与数组元素的存放:如数组A[0..5,0..7]表示一个二维数组,第一维下标从0到5,第二维下标变化从0到7. 例:给出数组的首地址(16进制),计算某元素的地址,其实质是求该元素按行存放或按列存放的位置。 计算其前面有多少给元素:地址=首地址+前面元素*每个元素占用的空间; A[3,6]:
您可能关注的文档
最近下载
- 《空间解析拙政园》课件.ppt VIP
- QCR9228-2015铁路通信、信号、电力、电力牵引供电施工机械配置技术规程.pdf
- [优秀QC成果]提高砂层地质条件下地连墙施工质量.pdf
- 员工培训方案及课程大纲[9篇].docx VIP
- 中国共产党纪律处分条例全面解读新修订纪律处分条例重点内容学习解读专题ppt.pptx VIP
- EPC项目设计管理培训.pptx
- 中国共产党纪律处分条例全面解读新修订纪律处分条例重点内容学习ppt.pptx VIP
- 国际性教育技术指导纲要 -采用循证方式.docx
- 2025年兵棋章节答案.docx VIP
- 党支部议事规则和决策程序规章制度范文(精选10篇).pdf VIP
文档评论(0)