当前位置:问答库>考研试题

2017年西南石油大学理学院925数据结构考研仿真模拟题

  摘要

一、填空题

1. 设二维数组A 的行和列的下标范围分别为【答案】

当其值为和每个元素占2个单元,按行优先顺处的元素为_____。 序存储,第一个元素的存储起始位置为b ,则存储位置为【解析】令这个元素的行标为i ,列标为j 。则它的存储位置是时,则i=2,j=3。

2. 一个算法具有5个特性:_____、_____、_____、有零个或多个输入、有一个或多个输出。

【答案】有穷性;确定性;可行性

3. 在一个具有n 个单元的顺序栈中,假定以地址高端(即下标为n 的单元)作为栈底,以top 作为栈顶指针,则当向栈中压入一个元素时,top 的变化是top=_____。 【答案】

【解析】由于栈底在地址高端,栈中压入一个元素时,栈顶向地址底端移动一个单位,

所以

4. 设用希尔排序对数组{98,36,-9,0,47,23,1,8,10,7}进行排序,给出的步长(也称

增量序列)依次是4,2,1则排序需_____趟,写出第一趟结束后,数组中数据的排列次序_____。

【答案】3; (10,7,-9,0,47,23,1,8,98,36)

5. 循环队列的引入,目的是为了克服_____。

【答案】假溢出时大量移动数据元素

【解析】用数组实现队列时,如果不移动,随着数据的不断读写,会出现假满队列的情况。即尾数组已满但头数组还是空的。循环队列也是一种数组,引入循环队列,有效克服假溢出大量移动数据元素的问题。

6. 以下是用类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: t->Lchild: p->Rchild=head:head->Lchild=p

7. 抽象数据类型的定义仅取决于它的一组_____,而与_____无关, 即不论其内部结构如何变化,只要它的_____不变,都不影响其外部使用。

【答案】逻辑特性;在计算机内部如何表示和实现;数学特性

8. 起始地址为480,大小为8的块,其伙伴块的起始地址是_____;若块大小为32,则其伙伴块的起始地址为_____。 【答案】

【解析】起始地址为P ,大小为的内存块,其伙伴块的起始地址计算公式如下:

根据上述公式起始地址就为488。

9. 在二叉树中,指针p 所指结点为叶结点的条件是_____。 【答案】

【解析】叶子节点的左右孩子都不存在。

10.己知有序表为(12,18,24,35,47,50,62,83,90,115,134)当用二分法查找90时,需_____次查找成功,查找47时_____成功,查找100时,需_____次才能确定不成功。

【答案】2;4;3

【解析】二分法查找元素次数列表

找100是找到115就停止了。

二、判断题

11.十字链表是无向图的一种存储结构。( )

【答案】×

【解析】十字链表是有向图的另一种链式存储结构。在十字链表中,对应于有向图的每条弧有一个结点,对应于每个顶点也有一个结点。类似于邻接表是无向图的一种链式存储结构。

12.在外部排序过程中,对长度为n 的初始序列进行“置换-选择”排序时,可以得到的最大初始有序段的长度不超过

【答案】×

【解析】当输入文件以关键字的升序排序时,只能得到一个长度为文件长度的初始归并段

13.为了很方便的插入和删除数据,可以使用双向链表存放数据。( ) 【答案】

【解析】链式存储结构便于数据的插入和删除,但只能顺序访问表中的元素。

14.m 阶B 树的任何一个结点的左右子树的高度都相等。( )

【答案】√

【解析】由B 树的性质得知,叶子结点都处于同一层。因此,m 阶B 树的任何一个结点的左右子树的高度都相等。

15.数组是同类型值的集合。( )

【答案】×

【解析】数组是具有相同性质的数据元素的集合,数据元素不仅有值,还有下标。因此,可以说数组是元素值和下标构成的偶对的有穷集合。

16.—个稀疏矩阵采用三元组形式表示,若把三元组中有关行下标与列下标的值互换,并把m 和n 的值互换,则就完成了

【答案】×

【解析】稀疏矩阵转置后,除行列下标及行列数互换外,还必须确定该元素转置后在新三元组中的位置。

17.若中序遍历平衡的二叉排序树,可得到排好序的关键码序列。( )

【答案】√

【解析】二叉排序树对于每一个结点,它的左子树的所有结点的值都小于这个结点的值,而它的右子树的所有结点的值都大于这个结点的值。而采用中序遍历,遍历顺序为左根右,因此可以得到按增序排列的关键码序列。

( ) 的转置运算。( )