数据结构习题及答案.docx
- 文档编号:2478366
- 上传时间:2022-10-30
- 格式:DOCX
- 页数:27
- 大小:45.86KB
数据结构习题及答案.docx
《数据结构习题及答案.docx》由会员分享,可在线阅读,更多相关《数据结构习题及答案.docx(27页珍藏版)》请在冰豆网上搜索。
数据结构习题及答案
数据结构习题集
线性表
一、选择题
1.链表不具有的特点是______
A.可随机访问任一元素C.不必事先估计存储空间
B.插入删除元素时不需移动D.所需空间与表长成正比
答案:
A
2.若一个栈的输入序列为abcde,则______是可能的输出序列
A.bcdaeC.aebcd
B.edbcaD.cabde
答案:
A
3.串是______
A.不少于一个字母的序列C.不少于一个字符的序列
B.任意个字母的序列D.有限个字符的序列
答案:
D
4.数组A[0..5,0..6]的每个元素占5个单元,将其按列序优先次序存储在起始地址为1000的连续内存单元中,则元素A[5,5]的地址为______。
A.1175C.1205
B.1180D.1210
答案:
A
5.()是线性表。
A.(1,2,3,…)C.{a,b,c,d,e}
B.(1,3,5,7)D.{‘A’,’B’,’C’}
答案:
B
6.分析下列程序段:
x=0;
for(j=1;j<=n;j++)x=x+1;
printf(“%d”,x);
其时间复杂度为()。
A.O(n/2)C.O(n)
B.O(2n)D.O(n2)
答案:
C
7.()可作线性表的存储结构。
A.循环单链表C.逆邻接表
B.二叉链表D.邻接表
答案:
A
8.双向链表可作()的存储结构。
A.二叉树C.无向图
B.有向图D.线性表
答案:
D
9.设数组C[1..4,1..6]的基地址为1024,每个元素占2个存储单元,若以行序为主顺序存储,则元素C[3,2]的存储地址是
A.1052C.1050
B.1036D.答案A,B,C都不对
答案:
C
10.二维数组A[0..8,1..10]的每个元素用相邻的6个字节存储,则存放数组A至少需要()个字节。
A.90C.270
B.180D.540
答案:
D
11.若栈的输入序列是1、2、3、4、5、6,则可能得到输出序列
A.5、2、4、3、1、6C.6、3、1、5、4、2
B.4、1、3、5、2、6D.3、4、2、5、1、6
答案:
C
12.若某链表中最常用的操作是在最后一个结点之后插入一个结点和删除最后一个结点,则采用()存储方式最节省运算时间。
A.单链表C.单循环链表
B.双链表D.带头结点的双循环链表
答案:
D
13.设一个栈的输入序列为A,B,C,D,则借助一个栈所得到的输出序列不可能是
()。
A.A,B,C,DC.A,C,D,B
B.D,C,B,AD.D,A,B,C
答案:
D
14.若线性表最常用的操作是存取第I个元素及其前驱的值,则采用()存储方式节省时间。
A.单链表B.双链表C.单循环链表D.顺序表
答案:
D
15.串的长度是()。
A.串中不同字母的个数
B.串中不同字符的个数
C.串中所含字符的个数,且大于0。
D.串中所含字符的个数
答案:
D
15.若用数组S[l..n]作为两个栈S1和S2的共用存储结构,对任何一个栈,只有当S[1..n]全满时才不能作入栈操作。
为这两个栈分配空间的最佳方案是()。
A.S1的栈底位置为0,S2的栈底位置为n+1
B.S1的栈底位置为0,S2的栈底位置为n/2
C.S1的栈底位置为1,S2的栈底位置为n
D.S1的栈底位置为1,S2的栈底位置为n/2
答案:
C
4.队列操作的原则是()。
A.先进先出B.后进先出C.只能进行插入D.只能进行删除
答案:
A
二、判断题
1.线性表的长度是线性表所占用存储空间的大小。
()
答案:
×
2.使用三元组表表示稀疏矩阵就一定能节省空间。
()
答案:
×
3.不进行排序也能对数组进行顺序查找。
()
答案:
∨
4.顺序栈的栈顶指针是个指针类型的变量。
()
答案:
×
5.在队列结构中,只能对队尾进行出队(删除)操作。
()
答案:
×
6.串长度是指串中不同字符的个数。
()
答案:
×
7.数组可以看成是线性结构的一种推广,因此可以对它进行插入、删除等运算。
()
答案:
×
8.在顺序表中取出第i元素所花费的时间与i正比。
()
答案:
×
9.在栈满的情况下不能作进栈运算,否则产生“上溢”。
()
答案:
∨
10.在循环队列中,若尾指针Real大于头指针Front,则其元素数为Real-Front。
()
答案:
∨
11.串是n个字母的有限序列(n>=0)。
()
答案:
×
12.在带头结点的单循环链表中,任一结点的后继指针均不空。
答案:
∨
13.线性表采用链表方式和顺序表方式存储,执行插入和删除运算的时间复杂度都是O(n),因而两种存储方式的插入、删除运算所花费的时间相同。
答案:
×
14.在栈为空的情况下,不能作出栈操作,否则产生下溢出。
答案:
∨
15.对矩阵压缩存储的方法是用三元组表存储矩阵元素。
答案:
×
16.
三、填空题
1.数据结构作为一门学科,它的研究内容包括________、数据的存储结构和________这三个方面。
答案:
数据的逻辑结构,数据的运算
2.数据在内存中最典型的存储方法有顺序存储、________、________和散列存储四种。
答案:
链接存储,索引存储
3.队列具有______的特性。
答案:
先进先出
4.在带有头结点的单链表L中,第一个元素结点的指针是________。
答案:
L^.next
5.在双向循环链表中,在指针P所指结点前插入指针S所指的结点,需执行下列语句:
s^.next:
=p;s^.prior:
-p^.prior;p^.prior:
=s;________:
=s;
答案:
S^.prior^.next或p^.prior^.prior^.next
6.设S[1..maxsize]为一个顺序存储的栈,变量top指示栈顶位置,栈为空的条件是________,栈为满的条件是________。
答案:
top=0top=maxsize
7.在单链表中,删除指针P所指结点的后继结点的语句是()。
答案:
P->next=P->next->next;
8.取出广义表A=((x,y,z),(a,b,c,d))中原子b的函数是()。
答案:
head(tail(head(tail(A))))
9.将下三角矩阵A[1..8,1..8]的下三角部分逐行地存储到起始地址为1000的内存单元中,已知每个元素4个单元,则A[7,5]的地址为()。
答案:
1100
10.在单链表中,若要在指针P所指结点之后插入由指针S所指的结点,则需执行下
列语句:
S->next=P->next;________;
答案:
P^.next:
=S;
11.在带有头结点的双链表L中,指针P所指结点是第一个元素结点的条件是________。
答案:
P^.Prior=L;
四、名词解释
1.数据项
2.数据元素
3.数据对象
4.数据结构
5.线性表
6.堆栈
五、应用题
1.用三元组表对下列稀疏矩阵作压缩存储,试画出对应的以行序为主的三元组表。
答案:
1120
2480
3215
3543
4436
2.如下图为一堆栈,左边按序进栈,最后出栈,试写出右边所有可能的结果。
ABC
答案:
ABCACBBACBCACBA
树
一、选择题
1.深度为k的二叉树最多有______个结点。
A.2kC.2k-1
B.2k-1D.2k-1
答案:
C
2.有6个度为2的结点的二叉树共有______个叶子。
A.36C.12
B.7D.15
答案:
B
3.()是满二叉树。
A.有7个结点的二叉树C.线索二叉树
B.哈夫曼树D.深度为4共有15个结点的二叉树
答案:
D
4.深度为4的二叉树最多有()个叶子。
A.4C.12
B.16D.15
答案:
D
5.将一棵有100个结点的顺序二叉树从根这一层开始,每一层上从左到右依次对结点进行编号,根结点的编号为1,则编号为49的结点的左孩子编号为()。
A.98C.50
B.99D.48
答案:
A
6.某二叉树的前序序列和后序序列正好相反,则该二叉树一定是()的二叉树。
A.空或只有一个结点C.任一结点后无左后件
B.高度等于其结点数D.任一结点后无右后件
答案:
B
7.n(n>0)个结点的顺序二叉树的深度为()。
A.C.「log2n」+1
B.D.「log2n」
答案:
C
8.一棵满二叉树又是一棵()。
A.二叉排序树C.顺序二叉树
B.线索二叉树D.哈夫曼树
答案:
C
9.深度为5的二叉树最多有()个结点。
A.25C.10
B.31D.32
答案:
B
10.线索二叉树中某结点D,没有右子树的主要条件是()。
A.左标志位为0C.右标志位为0
B.左标志位为1D.右标志位为1
答案:
D
11.在有n个叶子结点的哈夫曼树中,其结点总数为()。
A.不确定C.2n+1
B.2nD.2n-1
答案:
D
12.对二叉树从1开始进行连续编号,要求每个结点的编号大于其左右孩子的编号,同一个结点的左右孩子中,其左孩子的编号小于其右孩子的编号,则可采用()次序的遍历实现编号。
A.先序B.中序C.后序D.从根开始的层次遍历
答案:
C
13.有64个结点的完全二叉树的深度为()(根的层次为1)。
A.8B.7C.6D.5
答案:
B
14.在有n个结点的二叉链表中,值为非空的链域的个数为()。
(1)n-1
(2)2n-1(3)n+1(4)2n+1
答案:
A
二、判断题
1.由树转换成二叉树中,根结点的右子树总是空的。
()
答案:
∨
2.满二叉树中没有度为1的结点。
()
答案:
∨
3.二叉树中处于同一层上的结点都是兄弟结点。
()
答案:
×
4.若一棵二叉树的任一非叶子结点的度为2,则该二叉树为满二叉树。
()
答案:
×
5.二叉树只能采用二叉链表来存储。
()
答案:
×
6.树林中至少要有一棵树。
()
答案:
×
7.WPL最小的二叉树称为完全二叉树。
()
答案:
×
8.
三、填空题
1.七个结点的二叉树最小高度为____,最大高度为____。
答案:
3,7
2.在具有N个结点的顺序存储的完全二叉树中,若某结点的地址为i(2i+1≤N),则该结点的双亲的地址为______,左孩子的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 习题 答案