2017年华东交通大学电气与电子工程学院829数据结构考研导师圈点必考题汇编
● 摘要
一、填空题
1. G 是一个非连通无向图,共有28条边,则该图至少有_____个顶点。
【答案】9
【解析】求该非连通无向图的最少顶点数,则该图为一个孤立的顶点和一个完全连通图。
2. 无用单元是指_____,例_____
【答案】用户不再使用而系统没有回收的结构和变量;
3. 用循环链表表示的队列长度为n ,若只设头指针,则出队和入队的时间复杂度分别是_____和_____;若只设尾指针,则出队和入队的时间复杂度分别是_____和_____。
【答案】
【解析】队列的出队操作即删除队头的元素,队列的入队操作即在队尾添加元素,循环链表只设头指针,出队时,只要把头结点的下一个结点删除就好了,入队时,要把新的结点插入队尾,必须把队列遍历,找到队尾指针,才能插入。循环队列只设尾指针,出队时只要把为指针的下一个结点或者下下个结点删除即可,入队时,只要在尾指针的后面插入新的结点,并更新尾结点即可。
4. 以下是用类C 语言写山的算法,该算法将以二叉链表存储的二叉树中的叶结点按从左到右的顺序链成一个带头结点的双向循环链表,链接时,结点的Lchild 域作为前链域,指向结点的直接前驱,结点的Rchild 域作为后链域,指向结点的直接后继。算法中,使用一个顺序栈stack , 栈顶head 为双向循坏链表的头指针。 指针为top , P , t 为辅助指针,试填充算法中的空格,使算法完整。
void leafchain(BiTree Abt)
{p={BiTree)malloc (sizeof (BiTNode )); If (!p ){print£(“OVERFLOW\n”; exit (1); }
head=p; top=0; if (bt )
{top++; stack[top]=bt; while (top )
{t=stack[top]; top--;
if (it->Lchild && !t->Rchild){ (1) ; (2) ; (3) ; } else {if( (4) ){top++; stack[top]= (5) ; } if ( (6) ){top++;
stack[top]= (5) ; }
} }
(8) ; (9) ; } } 【答案】
p->Rchild=t:t->Lchild=p:p=t: t->Rchild!=null:t->Rchild: t->Lchild!=null: p->Rchild=head:head->Lchild=p
5. 下列程序是快速排序的非递归算法,请填写适当的语句,完成该功能。
t->Lchild:
【答案】
【解析】快速排序(quicksort )的基本思想是,通过一趟排序将待排记录分割成独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小,则可分别对这两部分记录继续进行排序,以达到整个序列有序。
6. 设有一个10阶对称矩阵A 采用压缩存储方式(以行为主序存储:
【答案】33
【解析】设存储的元素的行标为i ,列标为j 。若则
的地址为
将
代入得33。
则
的地址为
若
,)则 的地址为_____。
7. 循环队列的引入,目的是为了克服_____。
【答案】假溢出时大量移动数据元素
【解析】用数组实现队列时,如果不移动,随着数据的不断读写,会出现假满队列的情况。即尾数组已满但头数组还是空的。循环队列也是一种数组,引入循环队列,有效克服假溢出大量移动数据元素的问题。
8. 在一棵m
阶树中,若在某结点中插入一个新关键字而引起该结点分裂,则此结点中原有的关键字的个数是_____;若在某结点中删除一个关键字而导致结点合并,则该结点中原有的关键字的个数是_____。
【答案】
【解析】m
阶树除根结点和叶子结点外,结点中关键字个数最多是最少
9. 在进行入栈运算时应先判别栈是否_____:在进行出栈运算时应先判别栈是否_____:当栈中元素为n 个,进行入栈运算时发生上溢,则说明该栈的最大容量为_____。为了增加内存空间的利用率和减少溢出的可能性,由两个栈共享一片连续的空间时,应将两栈的_____分别设在内存空间的两端,这样只有当_____时才产生溢出。
【答案】满;空;n ; 栈底;两栈顶指针相邻(即值之差的绝对值为1)
10.建立索引文件的目的是_____。
【答案】提高查找速度
二、选择题
11.下列选项中,会导致用户进程从态切换到内核的操作是( )
I. 整数除以零 II. Sin( )函数调用 III. read系统调用 A. 仅 I 、II B .仅 I 、III C. 仅II 、III D. I、II 和III 【答案】B
【解析】对于I ,系统发生异常,需要进入内核态由操作系统进行处理,而read 系统调用函数也是在内核态执行,sin ( )就是普通的用户函数,在用户态执行,故答案为C 。
12.float 型整数据常用IEEE754单精度浮点格式表示,假设两个float 型变量x 和y 分别在32为寄存器
和中,若
A. B. C.
且符号相同
且符号不同
且符号相同
则x 和y 之间的关系为:( )
相关内容
相关标签