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

2017年大连大学教育部先进设计与智能计算重点实验室836数据结构考研题库

  摘要

一、填空题

1. 以下程序的功能是实现带附加头结点的单链表数据结点逆序连接,请填空完善之。

【答案】(1)(2)

2. 设数组

链表未到尾就一直进行

将当前结点作为头结点后的第一元素结点插入

数组中任一元素

均占内存48个二进制位,从首地址2000开始

连续存放在主内存里,主内存字长为16位,那么

(1)存放该数组至少需要的单元数是_____;

(2)存放数组的第8列的所有元素至少需要的单元数_____; (3)数组按列存储时,元素【答案】270; 27; 2204 【解析】数组的元素个数为需要

第8列有9个元素,共占

因为每个元素占内存48个二进制位,即6个字节。故总

个单元数。

个字节,因此至少需要

个单元数。由题知,每个元素占3

个字节,因为主内存字长为16位,即2个字节,所以至少需要

的起始地址是_____。

个单元。按列存储时,的起始地址为

3. 根据线性表的链式存储结构中每一个结点包含的指针个数,将线性链表分成_____和_____; 而又根据指针的连接方式,链表又可分成_____和_____。

【答案】单链表;双链表;(动态)链表;静态链表

【解析】线性表的链式存储结构根据每个结点包含的指针个数分为单链表和双链表,单链表只包含一个指针,指向后续元素,双链表包括两个指针,指向前一个元素和后续元素。根据指针的连接方式,链表可分为动态链表和静态链表。静态链表的指针指向下一个元素的编号,动态链表的指针指向下一个元素的物理位置。

4. 在单链表中设置头结点的作用是_____。

【答案】方便运算

5. 在顺序存储的二叉树中,编号为i 和j 的两个结点处在同一层的条件是_____。

【答案】要加“虚结点”。

设编号为

的结点在顺序存储中的下标为

6. 串是一种特殊的线性表,其特殊性表现在_____; 串的两种最基本的存储方式是_____、_____; 两个串相等的充分必要条件是_____。

【答案】其数据元素都是字符;顺序存储;链式存储;串的长度相等且两串中对应位置的字符也相等

7. 在哈希函数

则结点

在同一层上的条件是

【解析】用顺序存储结构存储二叉树时,要按完全二叉树的形式存储,非完全二叉树存储时,

中,P 值最好取_____。

【答案】小于等于表长的最大素数或不包含小于20的质因子的合数

【解析】在使用除留余数法时,对除数P 的选择很重要。若P 选的不好,容易产生同义词。一般情况下,可以选P 为质数或不包含小于20的质因素的合数。

8. 在双向循环链表中,向P 所指的结点之后插入指针f 所指的结点,其操作是_____、_____、_____、_____。

【答案】

9. 已知链队列的头尾指针分别是f 和r , 则将值x 入队的操作序列是_____。

【答案】

【解析】队列采用链式存储结构,先分配一个节点的内存,然后在队尾添加该节点。

10.设T 和P 是两个给定的串,在T 中寻找等于P 的子串的过程称为_____,又称P 为_____。

【答案】模式匹配;模式串

二、算法设计题

11.叙述基数排序算法,并对下列整数序列图示其基数排序的全过程。(179,208,93,306,55,859,984,9,271,33)

【答案】算法如下:

12.请编写一个判别给定二叉树是否为二叉排序树的算法,设二叉树用

【答案】算法如下:

法存储。