《数据结构》考试复习题.docx
- 文档编号:7513052
- 上传时间:2023-01-24
- 格式:DOCX
- 页数:19
- 大小:31.18KB
《数据结构》考试复习题.docx
《《数据结构》考试复习题.docx》由会员分享,可在线阅读,更多相关《《数据结构》考试复习题.docx(19页珍藏版)》请在冰豆网上搜索。
《数据结构》考试复习题
《数据结构》考试复习题-选择题
1.算法分析的目的是()
A.研究算法的输入与输出之间的关系B.找出数据结构的合理性
C.分析算法的效率以求改进算法D.分析算法的可读性与可移植性
2.在由list所指的非空线性链表中删除由p指的链结点的下一个链结点的过程是依次执行q=p->link,(),deleteq。
A.p->link=qB.q->link=pC.q->link=p->linkD.p->link=q->link
3.依次在初始为空的队列中插入元素为a,b,c,d以后,紧接着作了两次删除操作,此时的队头元素是()
A.aB.bC.cD.d
4.若某堆栈的输入序列为1,2,3,…,n-1,n,输出序列的第1个元素为n,则第i个输出元素为()
A.n-i+1B.n-1C.iD.哪个元素无所谓
5.设计递归问题的非递归算法一般需要用到()机制。
A.数组B.堆栈C.队列D.二叉树
6.已知非空二叉树采用顺序存储结构,树中结点的数据信息依次存放在一个一维数组中,即ABC□DEF□□G□□H□□该二叉树的中序列遍历序列为()
A.G,D,B,A,F,H.C,EB.G,B,D,A,F,H,C,E
C.B,D,G,A,F,H,C,ED.B,G,D,A,F,H,C,E
7.在一棵度为3的树中,度为3的结点有2个,度为2的结点有1个,度为1的结点有2个,那么,该树有()个叶结点。
A.4B.5C.6D.7
8.向具有n个结点的、结构均衡的二叉搜索树中插入一个元素的时间复杂度大致为()。
A.O
(1)B.O(log2n)C.O(n)D.O(nlog2n)
9.在初始为空的散列表中依次插入关键字序列(MON,TUE,WED,THU,FRI,SAT,SUN),散列函数为H(k)=iMOD7,其中,i为关键字k的第一个字母在英文字母表中的序号,地址值域为[0:
6],采用线性再散列法处理冲突。
插入后的散列表应该如()所示。
A.0123456
THUTUEWEDFRISUNSATMON
B.0123456
TUETHUWEDFRISUNSATMON
C.0123456
TUETHUWEDFRISATSUNMON
D.0123456
TUETHUWEDSUNSATFRIMON
10.对数据元素序列(49,72,68,13,38,50,97,27)进行排序,前三趟排序结束时的结果依次为:
第一趟:
13,72,68,49,50,97,27;第二趟:
13,27,68,49,38,50,97,72;第三趟:
13,27,38,49,68,50,97,72;该排序采用的方法是()
A.插入排序法B.选择排序法C.泡排序法D.堆积排序法
11.广义表中元素分为()
A.原子元素B.表元素C.原子元素和表元素D.任意元素
12.求字符串T在字符串S中首次出现的位置的操作称为()
A.串的模式匹配B.求子串C.求串的长度D.串的连接
13.树型结构最适合用来描述()
A.有序的数据元素B.无序的数据元素
C.数据元素之间的具有层次关系的数据D.数据元素之间没有关系的数据
14.若二叉树中度为2的结点有15个,度为1的结点有10个,()个叶结点。
A.25B.30C.31D.41
15.若深度为6的完全二叉树的第6层有3个叶结点,则该二叉树一共有()个结点。
A.15B.16C.17D.18
16.若某完全二叉树的深度为h,则该完全二叉树中至少有()个结点。
A.2hB.2h-1C.2h-1-1D.2h-1+1
17.在非空二叉树的中序遍历序列中,二叉树的根结点的左边应该()
A.只有左子树上的所有结点B.只有左子树上的部分结点
C.只有右子树上的所有结点D.只有右子树上的部分结点
18.对于任意非空二叉树,要设计出其后序遍历的非递归算法而不使用堆栈结构,最适合的方法是对该二叉树采用()存储结构。
A.三叉链表B.二叉链表C.顺序D.索引
19.对于一个数据序列,按照“逐点插入方法”建立一个二叉排序树,该二叉排序树的形状取决于()
A.该序列的存储结构B.序列中的数据元素的取值范围
C.数据元素的输入次序D.使用的计算机的软、硬件条件
20.下面关于哈夫曼树的说法,不正确的是()
A.对应于一组权值构造出的哈夫曼树一般不是唯一的
B.哈夫曼树具有最小带权路径长度
C.哈夫曼树中没有度为1的结点
D.哈夫曼树中除了度为1的结点外,还有度为2的结点和叶结点
21.线性链表中各链结点之间的地址()
A.连续与否都可以B.部分地址必须连续
C.一定不连续D.必须连续
22.删除非空双向循环链表中由q所指的链结点的过程是依次执行以下三个动作:
q->llink->rlink=q->rlink,(),deleteq。
A.q->llink=qB.q->rlink->llink=q
C.q->rlink->llink=q->llinkD.q->llink=q->rlink
23.在包含有1000个元素的线性表中实现如下四个操作,所需要的执行时间最长的是()
A.线性表采用顺序存储结构,在第10个元素后面插入一个新的元素
B.线性表采用链式存储结构,在第10个元素后面插入一个新的元素
C.线性表采用顺序存储结构,删除第990个元素
D.线性表采用链式存储结构,删除p指的链结点
24.因此在初始为空的队列中插入元素a,b,c,d以后,紧接着作了两次删除操作,此时的队尾元素是()
A.aB.bC.cD.d
25.若不考虑结点的数据信息的组合情况,具有3个结点的二叉树共有()种形态。
A.2B.3C.4D.5
26.对任何一棵二叉树,若n0,n1,n2分别是度为0,1,2的结点的个数,则n0=()
A.n1+1B.n1+n2C.n2+1D.2n1+1
27.下面的序列中()是最大堆。
A.1,2,8,5,3,9,10,4B.1,5,10,6,7,8,9,2
C.9,8,7,6,4,8,2,1D.9,8,7,6,5,4,3,1
28.在下述的排序方法中,不属于内排序方法的是()
A.插入排序法B.选择排序法
C.拓扑排序法D.归并排序法
29.采用顺序查找方法查找长度为n的线性表,平均查找长度为()。
A.nB.n/2C.(n+1)/2D.(n-1)/2
30.对线性表采用折半查找法,该线性表必须()。
A.采用顺序存储结构B.采用链式存储结构
C.采用顺序存储结构,且元素按值有序D.采用链式存储结构,且元素按值有序
31.已知二叉树的前序序列为ABDCEFG,中序序列为DBCAFEG,则后序序列为()。
A.DCBAFGEB.DCBFGEAC.DCBFEGAD.DCBGFEA
32.按逐点插入法建立对应于序列(54,28,16,34,73,62,95,60,26,43)的二叉排序树后,查找62要进行()次比较。
A.6次B.5次C.3次D.2次
33.根据堆积定义,下面的四个序列中,()是堆积。
A.75,65,30,15,25,45,20,10
B.75,65,45,10,30,25,20,15
C.75,45,65,30,15,25,20,10
D.75,45,65,10,25,30,20,15
34.正常情况下,删除非空的顺序存储结构的堆栈的栈顶元素,栈顶指针top的变化是()。
A.top不变B.top←0C.top←top+1D.top←top-1
35.中缀表达式(A-B*C)/D+E的后缀形式是()。
A.A-BC*D/E+B.ABC*-D/E+
C.ABC*-DE/+D.ABC*-D/+E
36.对二叉树进行()遍历可以得到结点的排序序列。
A.前序B.中序C.后序D.按层次
37.一个具有n个顶点的连通图的生成树中有()条边。
A.n-1B.nC.┗n/2┛D.n+1
38.对具有八个元素的序列(49,38,65,97,76,13,27,50)按从小到大排序,()是选择排序法第一趟的结果。
A.13,65,38,97,76,49,27,50
B.13,27,38,49,50,65,76,97
C.97,76,65,50,49.38,27,13
D.13,38,65,97,76,49,27,50
39.在长度为n的线性表A[1:
n]的第i个位置插入一个元素,需要后移()个元素。
A.n-1B.n-i+1C.n-i-1D.i
40.中缀表达式A-(B+C/D)*E的后缀形式是()
A.AB-C+D/E*B.ABC+D/-E*
C.ABCD/E*+-D.ABCD/+E*-
41.具有n个结点的完全二叉树的深度为()(符号┗x┛表示取不大于x的最大整数)
A.┗log2n┛B.┗log2n┛-1C.┗log2(n+1)┛D.┗log2n┛+1
42.具有n个顶点的无向图最多有()条边。
A.n(n-1)/2B.n(n+1)/2C.n2/2D.2n
43.根据堆的定义,下列的四个序列中()是一个堆。
A.7565301525452010
B.7565451030252015
C.7545653015252010
D.7545651025302015
44.若长度为n的线性表采用顺序存储结构,删除它的第i数据元素之前,需要先依次向前移动()个数据元素。
A.n-iB.n+iC.n-i-1D.n-i+1
45.在单链表中,已知q指的结点是q指的结点的直接前驱结点,若在q和p指的结点之间插入一个由s指的结点,则需执行()。
A.s->link=p->link,p->link=sB.q->link=s,s->link=p
C.p->link=s->link,s->link=pD.p->link=s,s->link=q
46.在非空双向循环链表中由q所指的那个链结点前面插入一个由p指的链结点的动作对应的语句依次为:
p->rlink=q,p->llink=q->llink,p=p->llink,()。
A.q->rlink=pB.q->llink->rlink=pC.p->llink->rlink=pD.p->rlink->rlink=p
47.为了节省存储空间,将n阶对称矩阵A中包括主对角线元素在内的下三角部分的所有元素按照行序为主序方式存放在一维数组B[1:
n(n-1)/2]中,对任意下三角部分的元素aij(i≥j)在B的下标k是()
A.i(i-1)/2+jB.(i(i-1))/2+jC.i(i+1)/2+jD.(i(i+1))/2+j
48.某堆栈的输入序列为a,b,c,d,下面的四个序列中,()不可能是它的输出序列。
A.a,c,b,dB.b,c,d,aC.d,c,a,bD.c,d,b,a
49.若非空队列采用链式存储结构,front和rear分别为队头元素与队列尾元素的指针,删除此时队列的一个元素的操作时依次执行p=front,(),deletep。
A.front=rear->linkB.rear=p->linkC.rear=front->linkD.front=p->link
50.广义表A=((),(a),(b,(c,d)))的长度为()
A.2B.3C.4D.5
51.从未排序序列中选择一个元素,该元素将未排序序列分成前后两个部分,前一部分中所有元素都小于等于所选元素。
后一部分中所有元素都大于等于所选元素,而所选元素处在排序的最终位置。
这种排序方法称为()排序法。
A.插入 B.希尔C.快速D.堆积
52.下列数据结构中,()不都是线性结构。
A.栈和队列B.队列和数组C.数组和串D.文件和队列
53.为了最快地对线性结构的数据进行某数据元素的读取操作,则其数据存储结构宜采用()方式。
A.顺序存储B.链式存储C.索引存储D.散列存储
54.设双链表中结点的前趋指针和后继指针的域名分别为t1和r1,则删除双链表中指针s所指结点的操作为()
A.s->t1->r1=s->t1;s->r1->t1=s->r1;B.s->t1->r1=s->r1;s->r1->t1=s->t1;
C.s->r1=s->t1->r1;s->t1=s->r->t1;D.s->t1=s->t1->r1;s->r1=s->r->t1;
55.假设left和right为双向链表中指向直接前趋结点和直接后继结点的指针域,现要把一个指针s所指的新结点作为非空双链表中q所指地点(中间结点)的直接后继结点插入到该双向链表中,则下列算法段能正确完成上述要求的是()
A.q->right=s;s->left=q;q->right->left=s;s->right=q->right;
B.s->left=q;q->right=s;q->right->left=s;s->right=q->right;
C.s->left=q;s->right=q->right;q->right->left=s;q->right=s;
D.以上都不对
56.具有100个结点的完全二叉树的深度为()
A.6B.7C.8D.9
57.已知一个稀疏矩阵的三元组表如下:
(1,2,3),(1,6,1),(3,1,5),(3,2,-1),(4,5,4),(5,1,-3),则其转置矩阵的三元组表中第3个三元组为()
A.(2,1,3)B.(3,1,5)C.(3,2,-1)D.(2,3,-1)
58.无向图的邻接矩阵是一个()
A.对称矩阵B.零矩阵C.上三角矩阵D.对角矩阵
59.下列说法中正确的是()
A.一个具有n个顶点的无向完全图的边数为n(n-1)
B.连通图的生成树是该图的一个极大连通子图
C.图的广度优先搜索是一个递归过程
D.对于非连通图的遍历过程中每调用一次深度优先搜索算法都得到该图的一个连通分量
60.顺序查找法与二分查找法对存储结构的要求是()
A.顺序查找与二分查找均只适用于顺序表
B.顺序查找与二分查找既适用于顺序表,也适用于链表
C.顺序查找只适用于顺序表
D.二分查找只适用于顺序表
61.在开散列表上,每个地址单元所链接的同义词表()
A.其键值相同B.其元素值相同
C.其散列地址相同D.其含义相同
62.对n个记录的文件进行堆排序,最坏情况下的执行时间为()
A.O(log2n)B.O(nlog2n)C.O(n)D.O(n2)
63.一组记录的关键码为(46,79,56,38,40,84),则利用快速排序方法,以第一个记录为基准得到的一次划分结果为()
A.38,40,46,56,79,84
B.40,38,46,79,56,84
C.40,38,46,56,79,84
D.40,38,46,84,56,79
64.下面程序段的时间复杂度是()
for(i=0;i for(j=1;j A[i][j]=0; A.O(n)B.O(m+n+1)C.O(m+n)D.O(m*n) 65.在单链表中,指针p指向元素为x的结点,实现“删除x的后继”的语句是() A.p=p->next;B.p->next=p->next->next; C.p->next=p;D.p=p->next->next; 66.在头指针为head且表长大于1的单循环链表中,指针p指向表中某个结点,若p->next->next=head,则() A.p指向头结点B.p指向尾结点 C.*p的直接后继是头结点D.*p的直接后继是尾结点 67.判定“带头结点的链队列为空”的条件是() A.Q.front==NULLB.Q.rear==NULL C.Q.front==Q.rearD.Q.front! =Q.rear 68.设有两个串T和P,求P在T中首次出现的位置的串运算称作() A.联接B.求子串C.字符定位D.子串定位 69.一棵含18个结点的二叉树的高度至少为() A.3B.4C.5D.6 70.已知二叉树的先序序列为ABDECF,中序序列为DBEAFC,则后序序列为() A.DEBAFCB.DEFBCAC.DEBCFAD.DEBFCA 71.无向图中一个顶点的度是指图中() A.通过该顶点的简单路径数B.与该顶点相邻接的顶点数 C.通过该顶点的回路数D.与该顶点连通的顶点数 72.假定一个链式队列的队头和队尾指针分别为front和rear,则判断队空的条件为()。 A.front==rearB.front! =NULLC.rear! =NULLD.front==NULL 73.在下列排序方法中,平均时间性能为O(nlogn)且空间性能最好的是() A.快速排序B.堆排序C.归并排序D.基数排序 74.已知一组关键字为{25,48,36,72,79,82,23,40,16,35},其中每相邻两个为有序子序列。 对这些子序列进行一趟两两归并的结果是() A.{25,36,48,72,23,40,79,82,16,35} B.{25,36,48,72,16,23,40,79,82,35} C.{25,36,48,72,16,23,35,40,79,82} D.{16,23,25,35,36,40,48,72,79,82} 75.设顺序存储的线性表共有123个元素,按分块查找的要求等分成3块。 若对索引表采用顺序查找来确定块,并在确定的块中进行顺序查找,则在查找概率相等的情况下,分块查找成功时的平均查找长度为() A.21B.23C.41D.62 76.索引非顺序文件的特点是() A.主文件无序,索引表有序B.主文件有序,索引表无序 C.主文件有序,索引表有序D.主文件无序,索引表无序 77.倒排文件的主要优点是() A.便于进行插入和删除运算B.便于进行文件的恢复 C.便于进行多关键字查询D.节省存储空间 78.若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素的算法的时间复杂度为()。 (1≤i≤n+1) A.O(0)B.O (1)C.O(n)D.O(n2) 79.若在线性表中采用折半查找法查找元素,该线性表应该()。 A.元素按值有序B.采用顺序存储结构 C.元素按值有序,且采用顺序存储结构D.元素按值有序,且采用链式存储结构 80.已知一算术表达式的中缀形式为A+B*C-D/E,后缀形式为ABC*+DE/-,其前缀形式为()。 A.–A+B*C/DEB.–A+B*CD/EC.-+*ABC/DED.-+A*BC/DE 81.若二叉树采用二叉链表存储结构,要交换其所有分支结点左右子树的位置,利用()遍历方法最合适。 A.前序B.中序C.后序D.按层次 82.利用逐点插入法建立序列(50,72,43,85,75,20,35,45,65,30)对应的二叉排序树以后,查找元素35要进行()元素间的比较。 A.4次B.5次C.7次D.10次 84.具有n个顶点的有向图最多有()条边。 A.nB.n(n—1)C.n(n+1)D.n2 85.排序趟数与序列的原始状态有关的排序方法是()排序法。 A.插入B.选择C.冒泡D.快速 86.下面给出的四种排序法中()排序法是不稳定性排序法。 A.插入B.冒泡C.二路归并D.堆积 87.若让元素1,2,3依次进栈,则出栈次序不可能出现()种情况。 A.3,2,1B.2,1,3C.3,1,2D.1,3,2 88.含5个结点(元素值均不相同)的二叉搜索树有()种。 A、54B、42C、36D、65 89.对包含n个关键码的散列表进行检索,平均检索长度是() A.O(log2n)B.O(n)C.O(nlog2n)D.不直接依赖于n 90.若需在O(nlog2n)的时间内完成对数组的排序,且要求排序是稳定的,则可选择的排序方法是: () A.快速排序B.堆排序C.归并排序D.直接插入排序 91.在最坏的情况下,查找成功时二叉排序树的平均查找长度( ) A.小于顺序表的平均查找长度B.大于顺序表的平均查找长度 C.与顺序表的平均查找长度相同D.无法与顺序表的平均查找长度比较 92.将两个各有n个元素的有序表归并成一个有序表,其最少的比较次数是() A.nB.2n-1C.2nD.n-1 93.下述二叉树中,哪一种满足性质: 从任一节点出发到根的路径上所经过的节点序列按其关键字有序() A.二叉排序树B.哈夫曼树C.AVL树D.堆 94.在一个单链表HL中,若要向表头插入一个由指针p指向的结点,则执行()。 A.HL=p;p->next=HL;B.p->next=HL;HL=p; C.p->next=HL;p=HL;D.p->next=HL->next;HL->next=p; 95.在一个单链表HL中,若要在指针q所指的结点的后面插入一个由指针p所指的结点,则执行()。 A.q->next=p->next;p->next=q;B.p->next=q->next;q=p; C.q->next=p->next;p->next=q;D.p->next=q->next;q->next=p; 96.在一个单链表HL中,若要删除由指针q所指向结点的后继结点,则执行()。 A.p=q->next;p->next=q->next;B.p=q->next;q->next=p; C.p=q->next;q->next=p->next;D.q->next=q->next->next;q->next=q; 97.栈的插入与删除操作在进行()。 A.栈顶B.栈底C.任意位置D.指定位置 98.当利用大小为N的一维数组顺序存储一个栈时,假定用top==N表示栈空,则向这个栈插入一个元素时,首先应执行语句修改top指针()。 A.top++B.top--C.top=0D.top 99.若让元素1,2,3依次进栈,则出栈次序不可能出现种情况()。 A.3,2,1B.2,1,3C.3,1,2D.1,3,2 100.在一个循环顺序队列中,队首指针指向队首元素的()位置。 A.前一个B.后一个C.当前D.后面 101.当利用大小为N的一维数组顺序存储一个循环队列时,该队列的最大长度为()。 A.N-2B.N-1C.ND.N+1 102.从一个循环顺
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 考试 复习题