2017年西安工程大学924数据结构考研复试核心题库
● 摘要
一、应用题
1. 对于后序线索二叉树,怎样査找任意结点的直接后继? 对于中序线索二叉树,怎样査找任意结点的直接前驱?
【答案】(1)后序线索树中结点的后继的方法如下:根结点无后继:当结点的rtag=1时,其右线索指向后继;当结点的rtag=0且是其双亲的右孩子,或是双亲的左孩于且双亲无右孩时,其双亲是该结点的后继;当结点是其双亲的左孩子且双亲有右孩子时,其双亲结点右子树种最左下的叶结点是其后继。
(2)对中序线索二叉树的某结点,若其左标记等于1,则左孩子为线索,指向直接前驱;否则其前驱是其左子树上按中序遍历的最后一个结点。
2. 对于具有n 个叶结点且所有非叶结点都有左、右孩子的二叉树。
(1)试问这种二叉树的结点总数是多少?
(2)试证明 。其中:表示第i 个叶结点所在的层号(设根结点所在层号为1)。
【答案】(1)根据二叉树中度为2的结点个数等于叶结点个数减1的性质,故具有n 个叶结点且非叶子结点均有左子树的二叉树的结点数是2n-l 。
(2)证明:当i=l时,
成立。
设某叶结点的层号为t ,当将该结点变为内部结点,从而再增加两个叶结点时,这两个叶结点的层号都是t+1, 对于公式的变化,是减少了一个原来的叶结点,増加了两个新叶结点,反映到公
,所以结果不变,这就证明当i=n时公式仍成立。证毕。 式中. 因为
3. 请写出应填入下列叙述中( )内的正确答案。
某一工程作业的网络图如图1所示,其中箭头表示作业,箭头边的数字表示完成作业所需的天
数。箭头前后的圆圈表示事件,圆圈中的数字表示事件的编号。用事件编号的序列(例如0-2-7-9-11)
表示进行作业的路径。
完成此工程的关键路径是(A )完成此工程所需的最少天数为(B )天,此工程中具有最大充
,充裕天数是(D )裕天数的事件是(C )。关键路径上的事件的充裕天数是(E )。 , 公式成立。设当i=n-1时公式成立,证明当i=n时公式仍
图1
【答案】A. 0-2-6-9-11; B. 20; C.事件顶点1、5和7各充裕两天;D. 4天;E. 0
4. 假定采用带头结点的单链表保存单词,当两个单词有相同的后缀时,则可共享相同的后缀存储空间。例如,“loading ”和“being ”的存储映像如图所示。
图 存储映像7K 意图
设str1和str2分别指向两个单词所在单链表的头结点,链表结点结构为
符i 所在结点的位置p )。要求:
(1)给出算法的基本设计思想。
(2)根据设计思想,采用C 或
【答案】
(1)算法的基本设计思想:
①分别求出strl 和str2所指的两个链表的长度m 和n ;
②将两个链表以表尾对齐:令指针p 、q 分别指向strl 和str2的头结点,若
表中的第个结点;若则使q 指向链表中的第
表尾的长度相等。
③反复将指针p 和q 同步向后移动,并判断它们是否指向同一结点。若p 和q 指向同一结点,则该点即为所 求的共同后缀的起始位置。
(2)用C 语言算法描述如下:
请设计一个时间上尽可能高效的算法,找出由strl 和str2所指的两个链表共同后缀的起始位置(如图中字或JA V A 语言描述算法,关键之处给出注释。 (3)说明你所设计算法的时间复杂度。 则使p 指向链个结点,即使指针p 和q 所指的结点到
两个指针同步向后移动
(3)参考答案的时间复杂度为:长度。
5. 简述广义表属于线性结构的理由。
【答案】广义表中的元素,可以是原子,也可以是子表,即广义表是原子或子表的有限序列,满足线性结构的特性:在非空线性结构中,只有一个称为“第一个”的元素,只有一个称为“最后一个”的元素,第一元素有后继而没有前驱,最后一个元素有前驱而没有后继,其余每个元素有唯一前驱和唯一后继。从这个意义上说,广义表属于线性结构。
6.
某局域网采用协议实现介质访问控制,
数据传输率为
程。
(1)若主机甲和主机乙发送数据时发生冲突,则从开始发送数据时刻起,到两台主机均检测到冲突时刻止,最短需经过多长时间? 最长需经过多长时间?(假设主机甲和主机乙发送数据过程中,其他主机不发送数据)
(2)若网络不存在任何冲突与差错,主机甲总是以标准的最长以太网数据帧(1518字节)向主机乙发送数据,主机乙每成功收到一个数据帧后立即向主机甲发送一个64字节的确认帧,主机甲收到确认帧后方可发送下一个数据帧,此时主机甲的有效数据传输速率是多少?(不考虑以太网帧的前导码)
【答案】(1)当甲乙两台主机同时向对方发送数据时,两台主机均检测到冲突的时间最短
:=
(lkm/200000km/s)×2=10j×s ; 当一台主机发送的数据就要到达另一台主机时,另一台主机才发送数据,两台主机均检测到冲突的时间最长:
=1500B=1500×8bit=12000bit; 发送1518B 的发送时间=1518×8/10Mbps=
间=2km/200000km/s
=确认帧的发送时间=64×
8/10Mbps=; 确认帧的传播时间
=2km/200000km/s=; 发送1518B 所用的总时间为
1285.6μs=9.33Mbps。
主机甲的有效数据传输率为12000bit / 数据帧的传播时(2)有效数据传输速率=发送的有效数据/发送有效数据所用的总时间。发送的有效数据或其中m 、n 分别为两个链表的
返回共同C 缀的起始点
主机甲和主机乙之间的距离为2km ,信号传播速度是200000km/S。请回答下列问题,要求说明理由或写出计算过
相关内容
相关标签