2022年数据结构复习提纲计算机本科.docx
《2022年数据结构复习提纲计算机本科.docx》由会员分享,可在线阅读,更多相关《2022年数据结构复习提纲计算机本科.docx(14页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选学习资料 - - - - - - - - - 数据结构 复习提纲 大作业在后面 运算机本科( 2004 年 11 月)第一部分 题型1单项题: 2 分 14=28 分2判定题: 1 分 10=10 分3填空题: 2 分 10=20 分4应用题: 8 分 4=32 分5程序题: 5 分 2=10 分其次部分复习提纲 不分题型, 弄清原理,不要死记硬背 1简洁复杂性的判定:1i=n;whilei=1i=i/2;其中 i=n,n/2,n/2 2, ,n/2 k, 需 n/2 k=1,即 2 k=n,所以复杂性为 Olog 2n 2i=1;whilei=n i=i+2;其中 i=1,3,5, ,2
2、k-1, 需 2k-1=n ,就频度 k=n+1/2,复杂性为 On 3i=1;whilei=n i=i*3;其中 i=1,3,3 2, ,3 k, 需 3 k=n,就频度 k=log 3n,复杂性为 Olog3n 4i=1;whilei*i=n i+;其中 i=1,2,3, ,k ,需 k 2=n,就频度 k=n 1/2,复杂性为 On 1/2 2四种基本储备方式的特点?什么时候规律关系可以由储备地址表示?什么时候由指针表示?什么时候储备地址与结点内容有关系?3规律结构、储备结构、运算、算法、算法复杂性等,哪些与运算机有关?无关?1次序表、单链表的储备、插入、删除运算特点?是否可以随机存取?
3、次序存取?2单链表中插入结点的基本步骤?3有头结点、无头结点的循环、非循环单链表为空的条件分别是什么?4用尾指针表示循环单链表有什么好处?5例:删除次序表中全部的正数,要求移动次数小;解:搜寻次序表,对每一个正数,先不删除,而是累计当前正数个数 性前移 s 位;算法复杂性为 O(n);voiddelssqlist *L int s,i;s,于是,对每个非正数,将它一次s=0;/ 正数计数器fori=0;in ;i+ ifL-datai0 s+;/ 累计当前正数else ifs0 L-datai-s=l-datai;/ 向前移动 s位L-n=L-n-s ;/ 调整表长 6例:将次序表中全部负数移
4、动到表的前端,要求移动次数小;1 / 8 名师归纳总结 - - - - - - -第 1 页,共 8 页精选学习资料 - - - - - - - - - 解:双向扫描:从前向后找一个正数,再从后向前找一个负数,然后交换两者位置;复杂性为 O(n);voidmovessqlist *L int i,j;/ 删除 A1 到An 的全部零元素 , 设数组 datatype xi=1 ;j=L-n ;下标从 1开头 whileidatai0 & idataj=0 & ij j- -;/ 从后向前找负数ifidatai;L-datai=L-dataj;L-dataj=x;/ 交换i+ ;j - ; 1链
5、队列、链栈是否都有必要设置头结点?2循环队列 Am 中,已知头指针、尾指针与元素个数中的任意两个,求另一个?队满条件?len=rear-front+m%m;rear=front+len%m;front=rear-len+m%m;队满: front=rear+1%m 3串长、空串、空白串、串连接、子串定位(模式匹配)等是何意?1稀疏矩阵、特殊矩阵的含义?为什么要对矩阵进行压缩储备?2三元组含义?一般矩阵按三元组储备能否节约空间?3广义表可分成几种?它们的图形表示特点如何?4例:从广义表A=x,a,b,c,y 中取出原子b;在广义表中取某个元素,需要将该元素所在的子表逐步分别出来,直到所求的元素成
6、为某个子表的表头,再用取表头运算取出;留意,最终取出某个元素时,不能用取表尾,由于它得到的是该元素组成 的子表,而不是元素本身;本例的运算过程为取表尾 tailA:得到 B=a,b,c,y 取表头 headB :得到 C=a,b,c 取表尾 tailC:得到 D=b,c 取表头 headD :得到 b 总的过程为: headtailheadtailA;1树全部结点的度数之和与结点数有何关系?与边数有何关系?解:边数度数和结点数1;由于度数就是孩子数,而根不是孩子,故度数和比结点总数少1;2只有 3 个结点的二叉排序树有几种形状?解:有 5 种,见下图所示;2 / 8 名师归纳总结 - - -
7、- - - -第 2 页,共 8 页精选学习资料 - - - - - - - - - 3二叉树是否是树的特殊情形?是否是有序树的特殊情形?解:都不是4树和二叉树的度有何特点?二叉树的度确定为 2 吗?解:二叉树每个结点最多两个孩子,即结点的度最大为 2,但也可能全部结点的度都不为 2,如只有 1 个结点,或单枝树等,所以二叉树的度并不肯定是 2;5某完全二叉树有 600 个结点,就叶子数有多少?度 1 结点有多少?解:由层次编号规律,结点 i 的左孩子编号为 2i ,如结点 i 为叶子,就它没有左孩子,即 2in ,即in/2 300 的结点为叶子,叶子号为301,302, ,600 ,共 3
8、00 个;由于 n0=n2+1,现在 n0=300,所以 n2=299;另外,结点总数n=n0+n1+n2,所以 n1 6003002991 1 的6二叉树每层只有一个结点,就高度为k 的二叉树有多少种?2 k-1 种情形,故有2k-1 种;解:每种这样的二叉树只能有一个叶子,在最底层,而叶子可能有7完全二叉树有6 个叶子,就结点总数就是11 吗?解:已知叶子数的完全二叉树一般有两棵,结点数差1,见下图:AABCBCDEFGDEFGHIJKHIJKL一般,结点数n n0n1 n2,而 n0n21 二叉树性质 ,所以 n2n01 n1;完全二叉树树中度为结点最多只有1 个,即 n11 或 0,所
9、以 n2n0或 n2n 01;8二叉树各结点在先、中、后序序列中的相对位置是否不变?解:如是叶子结点,就在先、中、后序序列中的相对位置不变,其它结点未必;9给定二叉树先、中、后序序列中的任意两个,是否就可仍原出二叉树?解:如给定的是先序和后序,就由于不能确定根,也就不能仍原出二叉树 不唯独 ;10如何由先序中序、后序中序仍原出二叉树?解:由遍历方法以下几点是明显的:对前序序列,序列的第一个点就是整个二叉树的根;对后序序列,序列的最终一个点就是整个二叉树的根;对中序序列,以根为界,序列的前一部分结点在根的左子树中,后一部分结点在根的右子树中;并且,由前一部分构成的子序列是左子树的中序序列,由后一
10、部分构成的子序列是右子树的中序序列;如给定了前序和中序序列,反复利用上面的和,就可获得结点完整的规律信息,即由前序序列 找到根,由中序序列得到左、右子树;再在对每个子树由前序序列找到子树的根,由中序序列得到子树的左、右子树,等等类推,每次都可得到一个点 原和构造出该二叉树;这个过程参见下图; 子树的根 ,从而逐步获得树的全部信息,也就可以仍前序遍历序列:根根左子树根根右子树peps中序遍历序列:is左子树右子树iei例:已知二叉树的中序和后序序列分别为:BCDAFEHJIG、DCBFJIHGEA,画出该二叉树;解:由后序序列可知,整个二叉树的根为 A,再从中序序列找到结点 A,其左边为 BCD
11、,对应 A 的左子树,右边为 FEHJIG,对应根的右子树;对每个子树进行同样分析即可画出此二叉树;比如对左子树BCD,从原后序序列可找到它对应的后根序列为 DCB,于是左子树的根为 B,然后再由中序序列 BCD可知 B的左子树为空,CD在 B的右子树,等等连续下去,直到每个结点都画出来;11完全二叉树的深度为 log 2 n 1 或 log 2 n 1,是否是说深度有两种可能?3 / 8 名师归纳总结 - - - - - - -第 3 页,共 8 页精选学习资料 - - - - - - - - - 解:只一种,它们的具体值相等;12树的常用储备方法有哪些?如何将树转换为二叉树?树的遍历与对应
12、二叉树的遍历有何关系?13怎样知道线索二叉树某结点是否有左右孩子,是否为叶子?解:看结点的线索标志位,比如左线索标志位ltag=1就无左孩子,左右线索标志位都为1 就为叶子;14如何画中序、先序、后序线索二叉链表?线索二叉链表是否就没有空指针了?解:以中序线索二叉链表为例,以下二叉树的中序线索二叉链表如下列图;具体过程见课本;0A0ADBEC1D10B01E01C1NULLNULLF1F115线索二叉树上求结点的前趋和后继时,是否可不再需要遍历了?16什么是前缀码?17哈夫曼树如何构造?WPL 如何求?其结点总数可以为 1000 吗?其中有度 1 结点吗?解:哈夫曼树的结点总数为 2n-1 ,
13、必为奇数,不行能为偶数;其中 n 为叶子数;构造过程是每次两个结点合并,故不会显现度 1 的结点;18例:求二叉树中度为 1 的结点数;解:设二叉树结点类型为 bitree,函数名为 sum1,函数返回结点数;int sum1bitree t int L,R;/ 当前树为空,递归出口ift=NULL return 0L= sum1t-lchild/ 求左子树中相应结点数R= sum1t-rchild / 求右子树中相应结点数ift-lchild=NULL & t-rchild.=NULL | t-lchild.=NULL & t-rchild=NULL / 当前结点度为也1 return L+
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022 数据结构 复习 提纲 计算机 本科
限制150内