专插本试题Word格式文档下载.docx
- 文档编号:22069993
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:11
- 大小:24.85KB
专插本试题Word格式文档下载.docx
《专插本试题Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《专插本试题Word格式文档下载.docx(11页珍藏版)》请在冰豆网上搜索。
C.只能进行插入
D.只能进行删除
4.
在具有n个结点的二叉链表中,非空的链域个数为
A.n-1
B.n
C.n+1
D.不确定
5.
对具有n个元素的有序查找表采用折半查找算法查找一个键值,其最坏比较次数的数量级为
A.O(log2n)
B.O(n)
C.O(nlog2n)
D.O(n2)
三、判断题:
判断下列各题是否正确,若正确,在题后的括号内填“T”,否则填“F”。
1.在栈为空的情况下不能作出栈处理,否则,将产生下溢出。
(
)
2.如果有向图G=(V,E)的拓扑序列唯一,则图中必定仅有一个顶点的入度为0、一个顶点的出度为0。
3.在大根堆中,必定满足每个结点的键值大于其左右子树中所有结点的键值。
4.在采用线性探测法处理冲突的散列表中所有同义词在表中相邻。
5.在索引顺序表中,对索引表既可采用顺序查找,也可采用二分查找。
四、解答下列各题:
(每题10分,共40分)
1.已知线性表L采用带头结点的的单向循环链表表示,试给出它的存储结构类型描述及相应的示意图。
2.已知一棵二叉树的先序、中序和后序序列如下所示,请填写各序列中空格处的结点,并画出该二叉树的二叉链表存储结构示意图。
先序序列是:
_B_F_ICEH_G;
中序序列是:
D_KFIA_EJC_;
后序序列是:
_K_FBHJ_G_A
3.已知数据表为(48,70,33,65,24,56,12,92,86,22),a)写出采用快速排序算法进行排序时第一趟快速划分的详细过程及结果;
b)写出按基数排序思想对最低位进行一次分配和收集的结果。
4.
对图1所示的带权无向图,写出它的邻接矩阵和深度优先搜索序列,并按克鲁斯卡算法求其最小生成树(写出求解的详细过程示意图)。
图1
带权无向图
五、算法设计题:
(前两题必做,每题15分,共30分;
第三题为附加题,选做,10分)
1.已知队列Q以循环队列存储。
写出Q的存储结构类型描述,并试编写算法实现将元素x插入队列Q的入队操作EnQueue(Q,x)和从队列Q中获取队首元素的函数GetTop(Q)。
2.假设线性表L=(a1,a2,……,an)用带头结点的单链表存储表示,试编写算法对其实现就地逆置,即利用原链表中每一个结点存储空间,使得元素的逻辑次序改变为(an,……,a2,a1)。
3.设非空二叉树T采用中序线索二叉链表表示,写出T的存储结构类型描述。
试编写算法InOrderTraverse(T)实现对二叉树T的中序遍历。
专升本《数据结构》试卷2
一、单项选择题:
1.折半查找法要求查找表中各元素的键值必须是
A.递增或递减
B.递增
C.递减
D.无序
2.若对某线性表最常进行的操作是在最后一个元素之后插入和删除第一个元素,则采用
B.双链表
C.仅有头指针的单循环链表
D.仅有尾指针的单循环链表
3.有64个结点的完全二叉树的深度为
(假设根结点的层次为1)。
A.8
B.7
C.6
D.5
4.对于键值序列(2,33,21,18,65,38,7,49,24,86),用筛选法建堆,必须从键值为
的结点开始。
A.86
B.2
C.65
D.38
5.设图G用邻接表存储,则求每个顶点入度的算法时间复杂度为
A.O(n)
B.O(n+e)
C.
O(n*n)
D.O(n*e)
二、判断题:
1.在队满情况下不能作入队处理,否则,将产生“上溢”。
2.基于插入思想的排序算法都是稳定的。
3.一个有向图的邻接表和逆邻接表中的结点个数不一定相等。
4.若一棵二叉树的任一非叶子结点度为2,则该二叉树为满二叉树。
5.广义表是线性表的推广,因此也可以采用顺序方式进行存储。
三、填空题:
在单链表中,删除指针P所指结点的后继结点的语句是:
有向图G用邻接矩阵A[1..n,1..n]存储表示,其第i行的所有元素之和等于顶点i的
基数排序算法的时间复杂度为
平衡二叉树中每个结点的平衡因子定义为
利用直接插入排序算法对有n个元素的数据表进行排序,在最坏情况下,元素的移动次数为
(每小题10分,共40分)
1.写出采用顺序方式存储的栈的类型描述及相应的入栈、出栈操作的示意图。
2.已知数据表为(60,20,31,5,44,55,61,30,80,150,4,29),写出采用希尔排序算法进行排序的详细过程和结果(假设增量序列dlta[]={6,3,1})。
3.已知图G的邻接表存储结构示意图如下所示,画出它的逻辑关系示意图,以及按深度优先搜索和广度优先搜索进行遍历所得到的顶点序列。
4.设散列函数为H(K)=Kmod5,散列表的地址空间为0..6,初始时散列表为空,用线性探测法解决冲突,请写出依次插入23,14,9,6,30,12,18时散列地址的计算过程及结果,以及最后得到的散列表。
1.设计算法将一个带头结点的单循环链表A分解为两个具有相同结构的链表B、C,其中:
B表中的结点为A表中元素的顺序号为奇数的结点,而C表中的结点为A表中元素的顺序号为偶数的结点。
(要求利用原表结点。
)
2.已知S为顺序栈。
写出S的存储结构类型描述。
试编写算法实现将元素x插入栈S的入栈操作Push(S,x)和删除栈顶元素的出栈操作Pop(S)。
3.已知一棵完全二叉树存于顺序表sa中,sa.elem[1..sa.last]包含各结点值。
试编写算法根据此顺序存储结构建立该二叉树的二叉链表T。
------------------------------------------------------------------------------
(专升本)《数据结构》试题(模A)2004-5-1
一、单项选择题(从下列各题四个备选答案中选出一个正确答案,将其代号
(A,B,C,D)写在下表中,答题写在其它地方无效;
每小题1分,共11分)
题号1234567891011
答案
1.数据的不可分割的基本单位是____。
A.元素 B.结点 C.数据类型 D.数据项
2.下列算法suanfa2的时间复杂度为____。
intsuanfa2(intn)
{intt=1;
while(t0)个结点的完全二叉树的深度是____。
A.é
log2(n)ù
B.é
log2(n)+1ù
C.?
log2(n+1)?
D.?
log2(n)+1?
7.与中缀表达式a+b*c-d等价的前缀表达式是____。
A.+a-*bcd B.*+-abcd
C.-+a*bcd D.abcd+*-
8.折半查找有序表(6,15,30,37,65,68,70,72,89,99),若查找元素37,需依次 与表中元素____进行比较,。
A.65,15,37 B.68,30,37
C.65,15,30 D.65,15,30,37
9.对长度为10的表作选择(简单选择)排序,共需比较____次关键字。
A.45 B.90 C.55 D.110
10.对n个元素的表作快速排序,在最坏情况下,算法的时间复杂度为____。
A.O(log2n) B.O(nlog2n) C.O(n2) D.O(2n)
共5页第1页
11.对长度为10的表作2_路归并排序,共需移动____次(个)记录。
A.20 B.45 C.40 D.30
二、填空(每空1分,共11分)
1.一个数据结构在计算机中的表示(映象)称为________________。
2.线性表中____________________________称为表的长度。
3.栈中元素的进出原则为_____________________。
4.设数组A[1..10,1..8]的基地址为2000,每个元素占2个存储单元,若以行序为主序顺序存储,则元素A[4,5]的存储地址为_____;
若以列序为主序顺序存储,则元素A[4,5]的存储地址为______。
5.一棵深度为6的满二叉树有______个非终端结点。
6.若一棵二叉树中有8个度为2的结点,则它有_____个叶子。
7.顺序查找n个元素的顺序表,当使用监视哨时,若查找成功,比较关键字的次数至少为____次,最多为____次;
若查找失败,比较关键字的次数为____次。
8.对长度为400的表采用分块(区)查找,最理想的块长为____。
三、回答下列问题(每小题5分,共10分)
1.线性表的存储结构,在什么情况下采用顺序结构?
为什么?
2.二叉树有哪几种基本形态?
画图说明之。
四、试画出下列存储结构图(每小题4分,共20分)
1.数组A[1..2,0..2]的以列序为主序的顺序存储结构。
2.依次将元素A,C,D,B插入一个初始状态为空的链式栈中,试画出所有插入完成之后的链式栈。
3.二叉树的顺序存储结构:
4.图的邻接矩阵:
5.有向图的逆邻接表:
五、求解下列问题(每小题6分,共24分)
1.给定30个字符组成的电文:
DDDDDAAABEEAAFCDAACABBCCCBAADD
试为字符A、B、C、D、E、F设计哈夫曼(Huffman)编码。
(1)画出相应的哈夫曼树;
(2)分别列出A、B、C、D、E、F的哈夫曼码;
(3)计算该树的带权路径长度WPL。
2.试按表(10,8,9,12,20,5,6,15,19,25)中元素的排列次序,将所有元素插入一棵初始为空的二叉排序树中,使之仍是一棵二叉排序树。
(1)试画出插入完成之后的二叉排序树;
(2)若查找元素17,它将依次与二叉排序树中哪些元素比较大小?
(3)假设每个元素的查找概率相等,试计算该树的平均查找长度ASL。
(4)对该树进行中序遍历,试写出中序遍历序列。
3.试将森林F={T1,T2,T3,T4}转换为一棵二叉树。
T1 T2 T3 T4
4.找出下面网络的最小生成树。
六、填空题(在算法中有下划线____的位置填空,使之成为完整、正确的算法)
算法说明:
已知r[1..n]是n个记录的递增有序表,用折半查找法查找关键字为k的记录,若查找失败,则输出”Failure”,返回零;
否则输出”Success”,并返回该记录的序号值。
(共8分)
算法(C函数):
intbin_search(structarecordr[],intn,k:
keytype)
/*r[1..n]为n个记录的递增有序表,k为关键字*/
{intlow,mid,hig;
low=1;
hig=n;
/*各变量初始化*/
while(_____)
{mid=___________________;
if(k
七、算法设计(算法中必须有注释,每小题8分,共16分)
1.设n个元素的线性表顺序存储在一维数组st[1..maxlen]的前n个位置上,试将新元素e插入表中第i-1个和第i个元素之间,写出算法。
2.设Head为带表头结点的单链表的头指针,试写出算法:
若为非空表,则输出首结点和尾结点的值(data值);
否则输出:
”Emptylist!
”。
网计(专升本)《数据结构》试题(模B)2004-5-1
1.数据的基本单位是____。
A.结点 B.数据元素 C.数据类型 D.数据项
2.下列算法suanfa1中语句"
x=x*2;
"
的执行次数是____。
voidsuanfa1(intn)
{inti,j,x=1;
for(i=1;
i0)个结点的完全二叉树的深度是____。
A.é
B.é
log2(n)-1ù
C.?
log2(n)-1?
9.与中缀表达式a-b/c+d等价的前缀表达式是____。
A.-a+/bcd B./-+bcd
C.+-/bcd D.abcd-/+
10.对有3600个记录的索引顺序表(分块表)进行查找,最理想的块长为____。
A.1800 B.60
C.1200 D.é
log23600ù
11.对n个元素的表作堆排序,在最坏情况下,算法的时间复杂度为____。
二、填空题(每空1分,共11分)
1.一个算法具有5个特性:
__________________、__________________、________________、有零个或多个输入、有一个或多个输出。
2.设长度为n的线性表顺序存贮,若在它的第i-1和第i个元素之间插入一个元素,共需移动_________个元素(1
1.线性表的存储结构,在什么情况下采用链接表(如:
单链表)结构?
为什么?
2.空格串与空串有区别?
举例说明之。
四、试画出下列存储结构图(每小题5分,共20分)
1.试画出下列稀疏矩阵以列序为主序的三元组表。
稀疏矩阵
2.试画出下列二叉树的中序线索二叉树存储结构图。
二叉树
3.试用孩子兄弟(左孩子右兄弟)表示法画出下列树的存储结构图。
树
4.试画出下列有向网的逆邻接表。
有向网
共5页第3页
1.已知二叉树的前序遍历序列和中序遍历序列分别是:
B,A,C,D,F,E,G和D,C,A,F,G,E,B,
试画出该二叉树。
2.试按表(25,15,19,24,20,5,16,45,40,38)中元素的排列次序,将所有元素插入一棵初始为空的二叉排序树中,使之仍是一棵二叉排序树。
(1)试画出插入完成之后的二叉排序树;
(2)若查找元素17,它将依次与二叉排序树中哪些元素比较大小?
(3)假设每个元素的查找概率相等,试计算该树的平均查找长度ASL;
(4)对该树进行中序遍历,试写出中序遍历序列。
3.试用权集合{4,6,5,12,2,1,13},构造赫夫曼(Huffman)树,
(1)列出构造过程,
(2)分别计算该赫夫曼树的路径长度和带权路径长度。
4.找出下面网络的最小生成树:
六、执行下面的C程序,指出输出结果。
(8分)
#include
structnode
{chardata;
structnode*next;
};
voidlink_list(structnode*p)
{while(p!
=NULL)
{printf("
%c"
p->
data);
p=p->
next;
}
printf("
\n"
);
}
main()
{charch;
structnode*q,*p,*f,*head=NULL;
for(ch='
A'
;
chdata=ch;
p->
next=head;
head=p;
link_list(p);
}
p=head;
head=NULL;
while(p!
=NULL)
{q=p;
q->
head=q;
f=head;
while(f->
next!
{link_list(head);
f=f->
next->
}
}
}
1.设n个元素的线性表顺序存储在一维数组st[1..maxlen]的前n个位置上,试写出算法:
删除表中第i(1≤i≤n)个元素。
若为非空表,则输出:
最大结点和最小结点的值(data值);
否则,输出:
“Emptylist”。
网计(专升本)《数据结构》试题(模C)2004-5-1
一、选择题(从下列各题的4个备选答案中选出1至2个正确答案,将其代号(A,B,C,D)写在下表中,答题写在其它地方无效;
每小题1分,共15分)
题号123456789101112121415
1.由____组成的集合是一个数据对象。
A.不同类型的数据项 B.不同类型的数据元素
C.相同类型的数据项 D.相同类型的数据元素
2.____是线性表。
A.(孔子,诸葛亮,曹雪芹) B.{A,B,C,D}
C.{10,11,12,13,14} D.(1,2,3,...)
3.____是表示线性数据结构的。
A.循环链表 B.邻接多重表 C.孩子链表 D.单链表
4.将线性表的数据元素以____结构存放,查找一个数据元素所需
的时间不依赖于表的长度。
A.循环双链表 B.哈希(Hash)表 C.一维数组 D.单链表
5.设数组A[1..8,1..10]的基地址为4000,每个元素占2个存储单元,若以列序为主序顺序存储,则元素A[4,7]的存储地址是____。
(假定无第0行第0列元素)
A.4072 B.4104 C.4102 D.4074
6.设依次进入一个栈的元素序列为c,a,b,d,不可得到出栈的元素序列有_____。
A.a.b,c,d B.a,d,c,b C.b,a,d,c D.c,d,a,b
7.___又是一棵满二叉树。
A.二叉排序树 B.深度为5有31个结点的二叉树
C.有15个结点的完全二叉树 D.哈夫曼(Huffman)树
8.深度为k的满二叉树有____个分枝结点。
A.2k-1 B.2k-1-1 C.2k+1 D.2k-1+1
9.具有n(n>
0)个结点的完全二叉树的深度为_____。
B.?
log2(n)?
+1
C.é
log2(n+1)ù
D.?
10.折半查找20个记录的有序表,若查找失败,比较关键字的次数____。
A.最多为6 B.最多为5 C.最少为3 D.最少为4
11.折半查找有序表(2,5,8,20,25,36,40,60),若查找元素60,需依次与
表中元素____进行比较。
A.25,40,60 B.25,40 C.20,36,40,60 D.20,36,40
12.查找哈希(Hash)表,解决冲突的的方法有____。
A.除留余数法 B.线性探测再散列法 C.直接地址法 D.链地址法
13.对有10个记录的表作简单选择排序,需要比较___次关键字。
A.100 B.45 C.50 D.90
14.对有n个记录的表作快速排序,在最坏情况下,算法的时间复杂度是____。
A.O(n) B.O(n2) C.O(nlog2n) D.O(n3)
15.一个排序算法时间复杂度的大小____有关。
A.与所需比较关
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 试题