数据结构题库1
数据结构模拟试题1

一、填空题(共20分,每空1分)。
1.数据结构是研究数据元素之间抽象化的相互关系和这种关系在计算机中的存储结构表示,通常有下列四种存储结构:(1)、(2)、(3)和(4)。
2.评价算法的标准很多,通常是以执行算法所需要的(5)和所占用的(6)来判别一个算法的优劣。
3.队列操作的原则是(7),栈的插入和删除操作在(8)进行。
4.对循环队列Q,它的最大存储空间是MAXSIZE,队头指针是front,队尾指针是rear,采用少用一个存储单元的方法解决假溢出时,队满的判断条件是(9),队空的判断条件是(10)。
5.在以head 为表头指针的带有头结点的单链表和循环单链表中,判断链表为空的条件分别为(11)和(12)。
6.假设二维数组A[6][8],每个元素用相邻的4个字节存储,存储器按字节编址,已知A[0][0]的存储位置为100,按行优先顺序存储的元素A[2][5]的第一个字节的地址为(13)。
7.空格串的长度为串中所包含(14)字符的个数,空串的长度为(15)。
8.有向图G 用邻接矩阵A[n][n] 存储表示,其第i 行的所有元素之和等于顶点i 的(16)。
9.在关键字序列(12 ,23 ,34 ,45 ,56 ,67 ,78 ,89 ,91) 中折半查找关键字为89和25的结点时,所需进行的比较次数分别为(17)和(18)。
10.请说出两种处理哈希冲突的方法(19)、_(20)_。
二、选择题(共20分,每题2分)。
1.对线性表,在下列哪种情况下应采用链式存储结构?()A.经常需要随机存取元素B.经常需要进行插入和删除操作C.表中元素的个数不变D.表中元素需要占据一片连续的存储空间2.从一个具有n个结点的单链表中查找其值等于x结点时,在查找成功情况下,则平均比较()个结点。
A.nB.n/2C.(n-1)/2D.(n+1)/23.若对某线性表最常进行的操作是在最后一个元素之后插入和删除第一个元素,则采用()存储方式最节省运算时间。
数据结构模拟试题(1)

(1)
(2)
(3)
(4)
参考答案:
(0) [30 18 20 15 38 12 44 53 46 18* 26 86]
(1) [18 30][15 20][12 38][44 53][18* 46][26 86]
(2) [15 18 20 30][12 38 44 53][18* 26 46 86]
A:n-I B:n-I+1
C:n-i-1 D:I
7、 不带头结点的单链表first为空的判定条件是( )。
A:first == NULL; B:first->link == NULL;
C:first->link == first; D:D. first != NULL;
8、 树中所有结点的度之和等于所有结点数加( )。
A:0 B:1
C:-1 D:2
9、 一棵具有35个结点的完全二叉树的高度为( )。假定空树的高度为 -1。
A:5 B:6
C:7 D:8
数据结构模拟试题(1)
一、填空题:06分,每题02分
1、 从一个具有n个结点的单链表中搜索其值等于x的结点时, 在搜索成功的情况下, 需平均比较_______次。
2、 根据一组记录(56,42,50,64,48)依次插入结点生成一棵AVL树时,当插入到值为_______的结点时需要进行旋转调整。
31、 已知一个数据表为{48,25,56,32,40},请写出在进行快速排序的过程中每次划分后数据表的变化。
(0) [48 25 56 32 40]
(1)
(2)
(3)
参考答案:
(0) [48 25 56 32 40]
数据结构练习试卷1(题后含答案及解析)

数据结构练习试卷1(题后含答案及解析)题型有:1. 选择题选择题(每小题1分,共75分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将此选项涂写在答题卡相应位置上,答在试卷上不得分。
1.数据结构主要研究数据的______。
A.逻辑结构B.存储结构C.逻辑结构和存储结构D.逻辑结构和存储结构及其运算的实现正确答案:D解析:数据结构是相互之间存在一种或多种特定关系的数据元素的集合。
数据结构一般包括三方面的内容:①数据之间的逻辑关系。
从逻辑关系上描述数据,与数据的存储无关。
②数据的存储结构。
存储结构分为顺序结构和链式结构,是逻辑结构在计算机存储器中的表示,它包括数据元素的表示和关系的表示。
③数据的运算。
也就是在数据上所施加的一系列操作。
只考虑操作的功能是怎样的,暂不考虑如何实现。
综上所述,本题的正确答案为选项D。
知识模块:数据结构2.在数据结构中,结点(数据元素)及结点间的相互关系组成数据的逻辑结构。
按逻辑结构的不同,数据结构通常可分为______两类。
A.线性结构和非线性结构B.紧凑结构和稀疏结构C.动态结构和静态结构D.内部结构和外部结构正确答案:A解析:在数据结构中,结点(数据元素)及结点间的相互关系组成数据的逻辑结构。
按逻辑结构的不同,数据结构通常可分为线性结构和非线性结构两类。
本题正确答案为选项A。
知识模块:数据结构3.下面叙述不正确的是______。
A.算法的执行效率与数据的存储结构有关B.算法的空间复杂度是指执行这个算法所需要的内存空间C.算法的有穷性是指算法必须能在执行有限个步骤之后终止D.算法的时间复杂度是指执行这个算法所需要的时间正确答案:D解析:算法的时间复杂度是指执行算法所需要的计算工作量,故D选项不正确。
知识模块:数据结构4.数据的存储结构是指______。
A.数据所占的存储空间量B.数据的逻辑结构在计算机中的表示C.数据在计算机中的顺序存储方式D.存储在外存中的数据正确答案:B解析:数据的存储结构是数据元素在计算机存储器内的表示。
数据结构期末复习题(1)

数据结构复习题一、选择题1.数据结构被形式地定义为<D,R>,其中D是的有限集。
A 算法B 数据元素C 数据操作D 逻辑结构2.数据结构被形式地定义为<D,R>,其中R是的有限集.A 操作B 映像C 存储D 关系3.在数据结构的讨论中把数据结构从逻辑上分为()。
A 内部结构与外部结构B 静态结构与动态结构C 线性结构与非线性结构D 紧凑结构与非紧凑结构4.链表表示线性表的优点是()A、便于随机存取B、花费的存储空间比顺序表少C、便于插入与删除5.用单链表表示的链式队列的队头在链表的()位置。
A.链头B.链尾C.链中6.线性表是具有n个()的有限序列(n≠0)A.表元素B.字符C.数据元素D.数据项7.采用线性链表表示一个向量时,要求占用的存储空间地址()。
A 必须是连续的B 部分地址必须是连续的C 一定是不连续的D 可连续可不连续8.向一个有127个元素的顺序表中插入一个新元素并保持原来顺序不变,平均要移动______个元素。
A.8B.63.5C.63D.79.若某链表中最常用的操作是在最后一个结点之后插入一个结点和删除最后一个结点,则采用______________存储方式最节省运算时间。
A单链表 B双链表C 单循环链表 D带头结点的双循环链表10.链表不具有的特点是____________.A可随机访问任一元素 B插入删除不需要移动元素C不必事先估计存储空间 D所需空间与线性表长度成正比11.在一个长度为n的顺序表的任一位置插入一个新元素的渐进时间复杂度为()。
A. O(n)B. O(log2n)C. O(1)D. O(n2)12.带头结点的单链表first为空的判定条件是:A. first == NULL;B. first->next == NULL;C. first->next == first;D. first != NULL;13.在一个单链表中,若删除p所指结点的后续结点,则执行____。
数据结构复习题1

数据结构复习题2
一、选择题(30分)
1.设一维数组中有n个数组元素,则读取第i个数组元素的平均时间复杂度为()。
(A) O(n)(B) O(nlog2n)(C) O(1)(D) O(n2)
2.设一棵二叉树的深度为k,则该二叉树中最多有()个结点。
(A) 2k-1(B) 2k(C) 2k-1(D) 2k-1
5.设哈夫曼树中共有n个结点,则该哈夫曼树中有___0_____个度数为1的结点。
6.设有向图G中有n个顶点e条有向边,所有的顶点入度数之和为d,则e和d的关系为_________。
7.__________遍历二叉排序树中的结点可以得到一个递增的关键字序列(填先序、中序或后序)。
8.设查找表中有100个元素,如果用二分法查找方法查找数据元素X,则最多需要比较________次就可以断定数据元素X是否在查找表中。
typedef struct node {datatype data; struct node *lchild,*rchild;} bitree;
bitree *q[20]; int r=0,f=0,flag=0;
void preorder(bitree *bt, char x)
{
if (bt!=0 && flag==0)
int hashsqsearch(struct record hashtable[ ],int k)
{
int i,j; j=i=k % p;
while (hashtable[j].key!=k&&hashtable[j].flag!=0){j=(____) %m; if (i==j) return(-1);}
(C)判别栈元素的类型(D)对栈不作任何判别
数据结构题库及答案详解

数据结构题库及答案详解一、选择题1. 在数据结构中,线性结构的特点是什么?A. 结构中存在唯一的开始结点和终端结点B. 结构中所有结点的前驱和后继都存在C. 结构中所有结点都只有一个直接前驱和一个直接后继D. 结构中存在多个开始结点和终端结点答案:C2. 栈是一种特殊的线性表,其特点是:A. 先进先出B. 先进后出C. 可以同时在两端进行插入和删除操作D. 只能在一端进行插入和删除操作答案:D3. 在二叉树的遍历算法中,先序遍历的顺序是:A. 先访问根结点,然后遍历左子树,最后遍历右子树B. 先遍历左子树,然后访问根结点,最后遍历右子树C. 先遍历右子树,然后访问根结点,最后遍历左子树D. 先遍历左右子树,最后访问根结点答案:A二、填空题4. 在图的遍历中,______算法可以避免重复访问同一顶点。
5. 哈希表的冲突可以通过______方法来解决。
答案:4. 深度优先搜索(DFS)5. 链地址法或开放地址法三、简答题6. 简述排序算法中的快速排序算法的基本原理。
答案:快速排序算法是一种分治算法,它通过选择一个元素作为“基准”,然后将数组分为两个子数组,一个包含小于基准的元素,另一个包含大于基准的元素。
然后对这两个子数组递归地应用快速排序算法。
7. 解释什么是递归,并给出一个递归函数的例子。
答案:递归是一种在函数中调用自身的编程技术。
递归函数必须有一个明确的终止条件,以避免无限递归。
例如,计算阶乘的递归函数如下:```int factorial(int n) {if (n == 0) return 1; // 终止条件return n * factorial(n - 1); // 递归调用}```四、编程题8. 编写一个函数,实现单链表的反转。
答案:```c// 假设ListNode是链表节点的定义ListNode* reverseList(ListNode* head) {ListNode* prev = NULL;ListNode* curr = head;ListNode* next = NULL;while (curr != NULL) {next = curr->next; // 保存下一个节点curr->next = prev; // 反转指针prev = curr; // 移动prevcurr = next; // 移动curr}return prev; // 新的头节点}```9. 给定一个整数数组,请实现一个函数来找到数组中的最长连续子序列的长度。
数据结构试题库及答案

数据结构试题库及答案一、选择题(每题2分,共20分)1. 在数据结构中,线性表的顺序存储结构通常使用()来存储。
A. 链表B. 栈C. 队列D. 数组答案:D2. 以下哪个算法不是排序算法?A. 快速排序B. 归并排序C. 深度优先搜索D. 堆排序答案:C3. 在二叉树的遍历算法中,先访问根节点,然后遍历左子树,最后遍历右子树的遍历方式是()。
A. 先序遍历B. 中序遍历C. 后序遍历D. 层序遍历答案:A4. 哈希表的冲突解决方法不包括以下哪种?A. 链地址法B. 线性探测法C. 二分查找法D. 再散列法答案:C5. 在图的遍历算法中,广度优先搜索(BFS)使用的辅助数据结构是()。
A. 栈B. 队列C. 堆D. 链表答案:B6. 下列关于堆的描述中,错误的是()。
A. 堆是一种特殊的完全二叉树B. 堆中的每个节点的值都大于其子节点的值C. 堆可以用于实现优先队列D. 堆的插入操作的时间复杂度为O(log n)答案:B7. 在一个长度为n的数组中,使用二分查找算法查找一个元素的最坏情况下的时间复杂度是()。
A. O(1)B. O(n)C. O(n^2)D. O(log n)答案:D8. 以下哪个数据结构不是线性结构?A. 链表B. 栈C. 队列D. 二叉树答案:D9. 以下哪个算法是动态查找表?A. 直接索引B. 顺序查找C. 二分查找D. 哈希表答案:D10. 在图的表示方法中,邻接矩阵表示法的缺点是()。
A. 占用空间大B. 占用空间小C. 插入和删除操作复杂D. 遍历操作复杂答案:A二、填空题(每题2分,共20分)1. 在一个长度为n的数组中,使用顺序查找算法查找一个元素的时间复杂度为________。
答案:O(n)2. 一个具有n个节点的完全二叉树的高度为________。
答案:log2(n) + 1(向上取整)3. 一个长度为n的链表,删除一个节点的时间复杂度为________。
答案:O(1)4. 在图的表示方法中,邻接表表示法的缺点是________。
数据结构考试试题题库

数据结构考试试题题库一、选择题1. 在数据结构中,栈(Stack)是一种特殊的线性表,其特点是:A. 允许在表的任意位置插入和删除元素B. 只能在表的一端进行插入和删除操作C. 只能在表的两端进行插入和删除操作D. 只能在表的中间进行插入和删除操作答案:B2. 假设有一个单链表,头结点的指针域为head,链表中每个结点包含一个数据域data和指向下一个结点的指针域next。
若要删除指针p所指向的结点,以下哪个操作是正确的?A. p = p->nextB. p->next = p->next->nextC. p = p->next->nextD. p = NULL答案:B3. 在二叉树的遍历算法中,先序遍历的顺序是:A. 先访问根节点,然后遍历左子树,最后遍历右子树B. 先遍历左子树,然后访问根节点,最后遍历右子树C. 先遍历右子树,然后访问根节点,最后遍历左子树D. 同时遍历左子树和右子树答案:A4. 哈希表的冲突可以通过多种方式解决,以下哪种不是解决哈希表冲突的方法?A. 链地址法B. 开放地址法C. 再哈希法D. 排序法答案:D5. 快速排序算法的时间复杂度在最好、最坏和平均情况下分别是:A. O(n log n), O(n^2), O(n)B. O(n), O(n log n), O(n^2)C. O(n log n), O(n), O(n log n)D. O(n^2), O(n log n), O(n)答案:A二、简答题1. 请简述什么是图,并说明图的两种基本表示方法。
答案:图是一种数据结构,由顶点(或称为节点)和边组成。
图可以表示为有向图或无向图。
图的两种基本表示方法为邻接矩阵和邻接表。
邻接矩阵是一个二维数组,其元素表示顶点之间的连接关系;邻接表则使用链表存储每个顶点的邻接点。
2. 什么是二叉搜索树(BST)?请简述其特点。
答案:二叉搜索树是一种特殊的二叉树,其中每个节点的值都大于或等于其左子树中所有节点的值,并且小于或等于其右子树中所有节点的值。
数据结构考试题及答案

数据结构考试题及答案一、选择题1. 下列哪种数据结构是一种线性结构?A. 树B. 栈C. 图D. 队列答案:B. 栈2. 以下哪种不是二叉树的遍历方式?A. 先序遍历B. 层序遍历C. 后序遍历D. 中序遍历答案:B. 层序遍历3. 在队列中,哪种操作不是O(1)时间复杂度的?A. 入队B. 出队C. 判空D. 获取队首元素答案:D. 获取队首元素二、填空题4. 二叉查找树的中序遍历结果为_______。
答案:升序排列的序列5. 栈的特点是_______进,_______出。
答案:后进,先出6. 图中两点间存在边则称它们为_______。
答案:邻接点三、简答题7. 请简要介绍一下栈和队列的应用场景及区别。
答:栈和队列都是常用的数据结构,栈适合用于实现括号匹配、表达式求值等场景,而队列常用于实现广度优先搜索、缓存队列等。
栈是一种后进先出的数据结构,而队列是一种先进先出的数据结构。
8. 什么是哈希表?它的优缺点分别是什么?答:哈希表是一种通过哈希函数将关键字映射到数组位置的数据结构。
其优点是能够快速查找、插入、删除元素,时间复杂度接近O(1);缺点是可能发生哈希冲突,导致性能下降。
四、综合题9. 给定以下无向图的邻接矩阵表示,请写出图的深度优先搜索(DFS)遍历路径。
```0 1 2 30 0 1 0 11 1 0 1 12 0 1 0 13 1 1 1 0```答:起始节点为0,路径:0 - 1 - 3 - 210. 写出以下树的层序遍历结果。
```1/ \2 3/ \ / \4 5 6 7```答:1 - 2 - 3 - 4 - 5 - 6 - 7以上就是数据结构考试题及答案,希望对您有所帮助。
如果有不清楚的地方,欢迎随时向老师询问。
祝您考试顺利!。
数据结构练习题1

数据结构练习题1⼀、单项选择题1.若⽤⼀个⼤⼩为6的数组来实现循环队列,且当前rear和front的值分别为0和3,当从队列中删除⼀个元素,再加⼊两个元素后,rear和front的值分别为多少?( )A. 1和 5B. 2和4C. 4和2D. 5和1⼤⼩为6的数组:下标从0-5;从前⾯出队,从后⾯⼊队front(前⾯)=3rear(后⾯)=0当出队列中删除⼀个元素,也就是出队,即front+1:=4再插⼊两个元素,即rear+2= 2【注】循环队列中,由于⼊队时尾指针向前追赶头指针;出队时头指针向前追赶尾指针,造成队空和队满时头尾指针均相等。
因此,⽆法通过条件front==rear来判别队列是"空"还是"满"。
2.循环队列A[0..m-1]存放其元素值,⽤front和rear分别表⽰队头和队尾,则当前队列中的元素数是( )。
A. (rear-front+m)%mB. rear-front+1C. rear-front-1D. rear-front3.for(i=0;ifor(j=0;jA[i][j]=i*j;上⾯算法的时间复杂度为( )A.O(m2)B.O(n2)C.O(m×n)D.O(m+n)4.设h是指向⾮空带表头结点的循环链表的头指针,p是辅助指针。
执⾏程序段p=h;while (p->next->next!=h)p=p->next;p->next=h;后(其中,p->next为p指向结点的指针域),则( )A. p->next指针指向链尾结点B. h指向链尾结点C. 删除链尾前⾯的结点D. 删除链尾结点5.假设带头结点的单向循环链表的头指针为head,则该链表为空的判定条件是()A.head= =NULLB.head–>next= =NULLC.head!=NULLD.head–>next= =head6. 设顺序表有19个元素,第⼀个元素的地址为200,且每个元素占3个字节,则第14个元素的存储地址为( )A.236B.239C.242D.2457. 若⼀棵⼆叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数是()A .9B .11C .15D .不确定8. n 个结点的线索⼆叉树上含有的线索数为()A .2nB .n -lC .n +lD .n9. 设有⼀个栈,按A 、B 、C 、D 的顺序进栈,则可能为出栈序列的是( )A.DCBAB.CDABC.DBACD.DCAB10. 归并排序中,归并的趟数是( )。
数据结构考试题库含答案

数据构造习题集含答案目录目录1选择题2第一章绪论2第二章线性表4第三章栈和队列6第四章串7第五章数组和广义表8第六章树和二叉树8第七章图11第八章查找13第九章排序14简答题19第一章绪论19第二章线性表22第三章栈和队列24第四章串26第五章数组和广义表27第六章树和二叉树28第七章图31第八章查找31第九章排序32编程题34第一章绪论34第二章线性表34第三章栈和队列45第四章串45第五章数组和广义表45第六章树和二叉树45第七章图45第八章查找45第九章排序50选择题第一章绪论1.数据构造这门学科是针对什么问题而产生的?〔A 〕A、针对非数值计算的程序设计问题B、针对数值计算的程序设计问题C、数值计算与非数值计算的问题都针对D、两者都不针对2.数据构造这门学科的研究容下面选项最准确的是〔D 〕A、研究数据对象和数据之间的关系B、研究数据对象C、研究数据对象和数据的操作D、研究数据对象、数据之间的关系和操作3.*班级的学生成绩表中查得三同学的各科成绩记录,其中数据构造考了90分,则下面关于数据对象、数据元素、数据项描述正确的选项是〔C 〕A、*班级的学生成绩表是数据元素,90分是数据项B、*班级的学生成绩表是数据对象,90分是数据元素C、*班级的学生成绩表是数据对象,90分是数据项D、*班级的学生成绩表是数据元素,90分是数据元素4.*数据构造是指〔A 〕。
A、数据元素的组织形式B、数据类型C、数据存储构造D、数据定义5.数据在计算机存储器表示时,物理地址与逻辑地址不一样,称之为〔C 〕。
A、存储构造B、逻辑构造C、链式存储构造D、顺序存储构造6.算法分析的目的是〔C 〕A、找出数据的合理性B、研究算法中的输入和输出关系C、分析算法效率以求改良D、分析算法的易懂性和文档型性7.算法分析的主要方法〔A 〕。
A、空间复杂度和时间复杂度B、正确性和简明性C、可读性和文档性D、数据复杂性和程序复杂性8.计算机部处理的根本单元是〔B 〕A、数据B、数据元素C、数据项D、数据库9.数据在计算机有链式和顺序两种存储方式,在存储空间使用的灵活性上,链式存储比顺序存储要〔B 〕。
数据结构试题库及答案

数据结构试题库及答案一、选择题1. 在数据结构中,线性结构的特点是:A. 元素之间存在一对一关系B. 元素之间存在一对多关系C. 元素之间存在多对多关系D. 元素之间存在一对一或多对多关系答案:A2. 栈(Stack)是一种特殊的线性表,其特点是:A. 只能在一端进行插入和删除操作B. 可以在两端进行插入和删除操作C. 只能在一端进行插入操作,另一端进行删除操作D. 可以在任意位置进行插入和删除操作答案:A3. 在二叉树中,度为1的节点数目为2,度为0的节点数目也为2,该二叉树的节点总数是:A. 5B. 6C. 7D. 8答案:B二、简答题1. 请简述什么是哈希表,并说明其主要优点。
答案:哈希表是一种通过哈希函数将键映射到表中一个位置来访问记录的数据结构。
其主要优点包括:平均情况下,查找、插入和删除操作的时间复杂度为O(1),即常数时间内完成操作;空间效率高,能够存储大量数据。
2. 描述图的深度优先搜索(DFS)算法的基本思想。
答案:深度优先搜索算法的基本思想是从一个顶点开始,尽可能深地搜索图的分支。
搜索过程中使用一个栈来保存路径上的顶点。
当搜索到一个顶点时,先访问该顶点,然后依次搜索其所有未被访问过的邻接顶点。
如果当前顶点的所有邻接顶点都被访问过,则回溯到上一个顶点,继续搜索其他邻接顶点。
三、应用题1. 给定一个无向图,使用邻接表表示,请编写一个算法找出图中的所有连通分量。
答案:首先,创建一个访问过的顶点集合。
然后,从图中任意一个未被访问的顶点开始,执行深度优先搜索(DFS)。
每次DFS完成后,就找到了一个连通分量。
重复这个过程,直到所有顶点都被访问过,即可找到图中的所有连通分量。
2. 假设有一个数组,需要频繁地进行查找、插入和删除操作,请设计一个适合这种场景的数据结构,并说明其优势。
答案:对于这种场景,可以使用平衡二叉搜索树(如AVL树或红黑树)。
这些数据结构可以保证在最坏情况下,查找、插入和删除操作的时间复杂度为O(log n)。
数据结构模拟练习题1 参考答案

数据结构模拟练习题1 参考答案一、单项选择题(每小题2分,共30分)1、算法的计算量的大小称为计算的( B )。
A.效率 B. 复杂性 C. 现实性 D. 难度2、静态链表中指针表示的是(B)A.内存地址 B.数组下标 C.下一元素地址 D.左、右孩子地址3、对于顺序存储的线性表,访问结点和增加、删除结点的时间复杂度为(C)A.O(n) O(n) B. O(n) O(1) C. O(1) O(n) D. O(1) O(1)4、在单链表指针为p的结点之后插入指针为s的结点,正确的操作是:(D )。
A.p->next=s;s->next=p->next; B.p->next=s->next;p->next=s;C.p->next=s;p->next=s->next; D. s->next=p->next;p->next=s;5、设有一顺序栈S,元素s1,s2,s3,s4,s5,s6依次进栈,如果6个元素出栈的顺序是s2,s3,s4, s6 , s5,s1,则栈的容量至少应该是( B )A.2B. 3C. 5D.66、串是一种特殊的线性表,其特殊性体现在(B)。
A.可以顺序存储 B.数据元素是一个字符C.可以链接存储 D.数据元素可以是多个字符7、若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数是( D )。
A.9 B.11 C.15 D.不确定8、列说法中正确的是( A )。
A.任何一棵二叉树中至少有一个结点的度为2B.任何一棵二叉树中每个结点的度都为2C.任何一棵二叉树中的度肯定等于2D.任何一棵二叉树中的度可以小于29、已知一棵二叉树的前序遍历结果为ABCDEF,中序遍历结果为CBAEDF,则后序遍历的结果为( B )。
A.CBEFDA B. FEDCBA C. CBEDFA D.不定10、下列哪一种图的邻接矩阵是对称矩阵( B )。
数据结构习题1

第1章绪论一、选择题1.数据结构被形式定义为(D,S),其中D是(B)的有限集合,S是D上的(H)有限集合。
A、算法B、数据元素C、数据操作D、逻辑关系E、操作F、映象G、存储H、关系2.数据结构是一门研究非数值计算的程序设计问题中计算机的(A)以及它们之间的(B)和运算的学科。
(1)A、操作对象B、计算方法C、逻辑存储D、数据映象(2)A、结构B、关系C、运算D、算法3.算法分析的目的是(D),算法分析的二个主要方面是(C)。
A、给出数据结构的合理性B、研究算法中输入输出的关系C、空间复杂性和时间复杂性D、分析算法的效率以求改进E、正确性和简明性F、分析算法的易懂性和文档性4.在数据结构中,从逻辑上可以把数据结构分成(C)。
A、动态和静态结构B、紧凑接和非紧凑结构C、线性与非线性结构D、内部结构和外部结构5.计算机算法指的是(C),它必具备输入、输出和(E)5 个特性。
A、计算方法B、排序方法C、解决问题的有限运算序列D、可行性、可移植性和可扩充性E、可行性、确定性和有穷性6.线性表的顺序存储结构是一种(A)的存储结构,线性表的链式存储结构是一种(B)。
A、随机存取B、顺序存取C、索引存取D、散列存取7.算法的时间复杂度取决于(A)。
A、问题的规模B、待处理数据的初态C、问题的规模和待处理数据的初态8.线性表若采用链表存储结构时,要求内存中可用存储单元的地址(D)。
A、必须是连续的B、部分地址必须是连续的C、一定是不连续的D、连续不连续都可以9.在以下的叙述中,正确的是(B)。
A、线性表的顺序存储结构优于链式存储结构B、二维数组是它的每个数据元素为一个线性表的线性表C、栈的操作方式是先进先出D、队列的操作方式是先进后出10.根据数据元素之间关系的不同特性,以下四类基本的逻辑结构反映了四类基本的数据组织形式。
以下解释错误的是 (A )。
A、集合中任何两个结点之间都有逻辑关系但组织形式松散B、线性结构中结点按逻辑关系依次排列形成一条"锁链"C、树形结构具有分支、层次特性,其形态有点像自然界中的树D、图状结构中的各个结点按逻辑关系互相缠绕,任何两个结点都可以邻接11.以下说法正确的是(D )。
数据结构试题库及答案

数据结构试题库及答案第一章概论一、选择题1、研究数据结构就是研究( D )。
A. 数据的逻辑结构B. 数据的存储结构C. 数据的逻辑结构和存储结构D. 数据的逻辑结构、存储结构及其基本操作2、算法分析的两个主要方面是( A )。
A. 空间复杂度和时间复杂度B. 正确性和简单性C. 可读性和文档性D. 数据复杂性和程序复杂性3、具有线性结构的数据结构是( D )。
A. 图B. 树C. 广义表D. 栈4、计算机中的算法指的是解决某一个问题的有限运算序列,它必须具备输入、输出、( B )等5个特性。
A. 可执行性、可移植性和可扩充性B. 可执行性、有穷性和确定性C. 确定性、有穷性和稳定性D. 易读性、稳定性和确定性5、下面程序段的时间复杂度是( C )。
for(i=0;i<m;i++)for(j=0;j<n;j++)a[i][j]=i*j;A. O(m2)B. O(n2)C. O(m*n)D. O(m+n)6、算法是( D )。
A. 计算机程序B. 解决问题的计算方法C. 排序算法D. 解决问题的有限运算序列7、某算法的语句执行频度为(3n+nlog2n+n2+8),其时间复杂度表示( C )。
A. O(n)B. O(nlog2n)C. O(n2)D. O(log2n)8、下面程序段的时间复杂度为( C )。
i=1;while(i<=n)i=i*3;A. O(n)B. O(3n)C. O(log3n)D. O(n3)9、数据结构是一门研究非数值计算的程序设计问题中计算机的数据元素以及它们之间的()和运算等的学科。
A. 结构B. 关系C. 运算D. 算法10、下面程序段的时间复杂度是()。
i=s=0;while(s<n){i++;s+=i;}A. O(n)B. O(n2)C. O(log2n)D. O(n3)11、抽象数据类型的三个组成部分分别为()。
A. 数据对象、数据关系和基本操作B. 数据元素、逻辑结构和存储结构C. 数据项、数据元素和数据类型D. 数据元素、数据结构和数据类型12、通常从正确性、易读性、健壮性、高效性等4个方面评价算法的质量,以下解释错误的是( )。
数据结构考试题1

要求:所有的题目的解答均写在答题纸上,需写清楚题目的序号。
每张答题纸都要写上姓名和学号。
一、单项选择题(每小题1.5分,共计30分)1。
数据结构是指。
A. 一种数据类型B. 数据的存储结构C。
一组性质相同的数据元素的集合D。
相互之间存在一种或多种特定关系的数据元素的集合2. 以下算法的时间复杂度为。
void fun(int n){int i=1;while (i<=n)i++;}A。
O(n) B. O(n)C。
O(nlog2n)D。
O(log2n)3. 在一个长度为n的有序顺序表中删除元素值为x的元素时,在查找元素x时采用二分查找,此时的时间复杂度为 .A。
O(n)B。
O(nlog2n)C。
O(n2) D。
O(n)4. 在一个带头结点的循环单链表L中,删除元素值为x的结点,算法的时间复杂度为。
A. O(n)B. O(n)C. O(nlog2n)D. O(n2)5. 若一个栈采用数组s[0.。
n—1]存放其元素,初始时栈顶指针为n,则以下元素x进栈的正确操作是。
A.top++;s[top]=x;B.s[top]=x;top++;C.top-—;s[top]=x; B.s[top]=x;top--;6。
中缀表达式“2*(3+4)-1”的后缀表达式是,其中#表示一个数值的结束。
A. 2#3#4#1#*+—B. 2#3#4#+*1#-C. 2#3#4#*+1#—D. —+*2#3#4#1#7. 设环形队列中数组的下标为0~N—1,其队头、队尾指针分别为front和rear(front 指向队列中队头元素的前一个位置,rear指向队尾元素的位置),则其元素个数为。
A。
rear—front B. rear—front—1C. (rear-front)%N+1 D。
(rear—front+N)%N8。
若用一个大小为6的数组来实现环形队列,队头指针front指向队列中队头元素的前一个位置,队尾指针rear指向队尾元素的位置。
数据结构试题1

数据结构1.向一个长度为n的顺序表中的第i个元素之前插入一个元素时,需要向后移动个元素。
答:n-i+12.在一个长度为n的顺序表中删除第i个元素时,需要向前移动元素。
答: n-i3.在单链表中设置头结点的作用是。
答:简单插入、删除算法4.在单链中要删除某一指定结点,必须找到该结点的结点。
答:直接前驱5.访问单链表中的结点,必须沿着依次进行。
答:指针域6.在双链表中每个结点有两个指针域,一个指向,一个指向。
答:直接前驱结点,直接后继结点7.在链表中,删除最后一个结点的算法时间复杂度为O(1)。
答:双向循环8.访问一个线性表中具有给定值的时间复杂度的数量级是。
答:O(n)9.由n个数据元素生成一个顺序表,若每次都调用插入算法把一个元素插入到表头,则整个算法的时间复杂度为,若每次都调用插入算法把一个元素插入到表尾,则整个算法的时间复杂度为。
答:O(n) ,O(n2)10.在链表中,可以用表尾指针代替表头指针。
答:双向11.在链表中,可以用表尾指针代替表头指针。
答:双向12.根据n个数据元素建立对应的顺序表和单链表存储结构,其算法的时间复杂度最好的情况是,最坏的情况是。
答:O(n) ,O(n2)13.求线性表的顺序存储和链式存储的长度的算法时间复杂度分别是和。
答:O(1) , O(n)14.在一个带头结点的单链表中,在表头插入或删除与在其他位置插入或删除,其操作过程是否相同?。
答:相同15.在一个不带头结点的单链表中,在表头插入或删除与在其他位置插入或删除,其操作过程是否相同?。
答:不相同16.阐述顺序表和链表存储方式的特点。
答:顺序表存储方式为数据分配连续的存储单元,数据元素按逻辑顺序依次存储到相应存储单元中,使得逻辑相邻的数据元素物理也相邻,因此可以实现随即访问线性表的数据元素,即数据访问的时间复杂度为O(1)。
链表存储方式分配的存储单元可以不连续,通过每个结点的指针域来表示数据元素之间的逻辑关系,只能顺序访问线性表中的数据元素。
数据结构考试题库及答案

数据结构考试题库及答案一、选择题1. 下列哪个不是线性结构?A. 栈B. 队列C. 双向链表D. 树答案:D2. 在顺序存储结构中,数据元素的物理位置与逻辑位置相同的是哪种结构?A. 栈B. 队列C. 线性表D. 树答案:C3. 下列哪种排序算法的时间复杂度是O(nlogn)?A. 冒泡排序B. 选择排序C. 快速排序D. 插入排序答案:C4. 在二叉树中,度为0的节点称为()。
A. 根节点B. 内节点C. 叶子节点D. 父节点答案:C5. 下列哪种图的邻接矩阵是对称的?A. 有向图B. 无向图C. 有向连通图D. 无向连通图答案:B二、填空题6. 在链表中的每个节点至少包含两个部分:一个是存储数据元素的数据域,另一个是存储下一个节点地址的指针域。
7. 在顺序表中,元素之间的逻辑关系是由它们的相对位置来体现的。
8. 快速排序的基本思想是:在待排序序列中选取一个基准元素,将序列中所有小于基准元素的元素放在基准元素前面,所有大于基准元素的元素放在基准元素后面。
9. 图中的每个节点称为顶点,顶点之间的连线称为边。
10. 在哈希表中,哈希函数的目的是将关键字映射到散列地址。
三、判断题11. 在顺序表中插入一个元素的时间复杂度为O(1)。
()答案:错误。
插入一个元素的时间复杂度为O(n),因为可能需要移动其他元素。
12. 在链表中删除一个元素的时间复杂度为O(n)。
()答案:错误。
删除一个元素的时间复杂度为O(1),只要找到该元素的前一个节点即可。
13. 二分查找只适用于有序的顺序表。
()答案:正确。
14. 在二叉树中,任意节点的度数不会超过2。
()答案:正确。
15. 图的邻接表表示法比邻接矩阵表示法更加节省空间。
()答案:正确。
四、应用题16. 请用C语言实现一个顺序栈的数据结构,并给出入栈、出栈和判断栈空的操作。
答案:```c#define MAXSIZE 100typedef struct {int data[MAXSIZE];int top;} SeqStack;// 初始化栈void InitStack(SeqStack s) {s->top = -1;}// 判断栈是否为空int StackEmpty(SeqStack s) {return s->top == -1;}// 入栈int Push(SeqStack s, int x) {if (s->top == MAXSIZE - 1) {return 0; // 栈满}s->data[++s->top] = x;return 1;}// 出栈int Pop(SeqStack s, int x) {if (s->top == -1) {return 0; // 栈空}x = s->data[s->top--];return 1;}```17. 请简述二分查找的基本思想。
数据结构试题库集及答案

数据结构试题库及答案第一章概论一、选择题1、研究数据结构就是研究( D )。
A. 数据的逻辑结构B. 数据的存储结构C. 数据的逻辑结构和存储结构D. 数据的逻辑结构、存储结构及其基本操作2、算法分析的两个主要方面是( A )。
A. 空间复杂度和时间复杂度B. 正确性和简单性C. 可读性和文档性D. 数据复杂性和程序复杂性3、具有线性结构的数据结构是( D )。
A. 图B. 树C. 广义表D. 栈4、计算机中的算法指的是解决某一个问题的有限运算序列,它必须具备输入、输出、( B )等5个特性。
A. 可执行性、可移植性和可扩充性B. 可执行性、有穷性和确定性C. 确定性、有穷性和稳定性D. 易读性、稳定性和确定性5、下面程序段的时间复杂度是( C )。
for(i=0;i<m;i++)for(j=0;j<n;j++)a[i][j]=i*j;A. O(m2)B. O(n2)C. O(m*n)D. O(m+n)6、算法是( D )。
A. 计算机程序B. 解决问题的计算方法C. 排序算法D. 解决问题的有限运算序列7、某算法的语句执行频度为(3n+nlog2n+n2+8),其时间复杂度表示( C )。
A. O(n)B. O(nlog2n)C. O(n2)D. O(log2n)8、下面程序段的时间复杂度为( C )。
i=1;while(i<=n)i=i*3;A. O(n)B. O(3n)C. O(log3n)D. O(n3)9、数据结构是一门研究非数值计算的程序设计问题中计算机的数据元素以及它们之间的()和运算等的学科。
A. 结构B. 关系C. 运算D. 算法10、下面程序段的时间复杂度是()。
i=s=0;while(s<n){i++;s+=i;}A. O(n)B. O(n2)C. O(log2n)D. O(n3)11、抽象数据类型的三个组成部分分别为()。
A. 数据对象、数据关系和基本操作B. 数据元素、逻辑结构和存储结构C. 数据项、数据元素和数据类型D. 数据元素、数据结构和数据类型12、通常从正确性、易读性、健壮性、高效性等4个方面评价算法的质量,以下解释错误的是()。
数据结构试题1(有答案)

试题1一、单选题(每题 2 分,共20分)1.1。
对一个算法的评价,不包括如下()方面的内容。
A.健壮性和可读性B.并行性C.正确性D.时空复杂度2. 2.在带有头结点的单链表HL中,要向表头插入一个由指针p指向的结点,则执行()。
A. p-〉next=HL—〉next;HL->next=p;B。
p->next=HL;HL=p;C。
p—〉next=HL;p=HL; D. HL=p;p->next=HL;3. 3.对线性表,在下列哪种情况下应当采用链表表示?()A。
经常需要随机地存取元素B。
经常需要进行插入和删除操作C。
表中元素需要占据一片连续的存储空间 D.表中元素的个数不变4. 4.一个栈的输入序列为1 2 3,则下列序列中不可能是栈的输出序列的是( C )A。
2 3 1 B. 3 2 1C。
3 1 2 D。
1 2 35.5。
AOV网是一种().A.有向图B.无向图C.无向无环图D.有向无环图6. 6.采用开放定址法处理散列表的冲突时,其平均查找长度( )。
A.低于链接法处理冲突B。
高于链接法处理冲突C.与链接法处理冲突相同D.高于二分查找7.7.若需要利用形参直接访问实参时,应将形参变量说明为( )参数。
A.值B.函数C.指针D.引用8.8。
在稀疏矩阵的带行指针向量的链接存储中,每个单链表中的结点都具有相同的( ).A.行号B.列号C.元素值D.非零元素个数9.9。
快速排序在最坏情况下的时间复杂度为()。
A.O(log2n) B.O(nlog2n) C.0(n) D.0(n2)10.10。
从二叉搜索树中查找一个元素时,其时间复杂度大致为()。
A. O(n)B。
O(1) C. O(log2n) D。
O(n2)二、二、运算题(每题 6 分,共24分)1. 1.数据结构是指数据及其相互之间的______________.当结点之间存在M对N(M:N)的联系时,称这种结构为_____________________。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 . 不是栈和队列共同特点的是 A . 只允许在端点处插入和删除元素 B . 都是先进后出 C . 都是先进先出 D . 没有共同点 答案:B,C,D解析:4 . 以下( )属于设计一个“好”的算法应考 虑达到的目标。
A . 正确性 B . 可读性 C . 健壮性解析:D . 效率与低存储量要求 答案:A,B,C,D2 . 在任何问题中, 数据元素都不是孤立存在的, 而是在它们之间存在着某种关系,这种数据元素 相互之间的关系称为结构。
根据数据元素之间关 系的不同特性,下面的选项中( )属于其基本 结构。
A . 集合 B . 线性结构 C . 树形结构 D . 图状结构 答案:A,B,C,D解析:5 . 设一条单链表的头指针变量为 head 且该链 表没有头结点,则不能其判空条件是( ) A . head==0 B . head->next==0 C . head->next==head D . head!=0 答案:B,C,D解析: 解析: 3 . 以下数据结构中属于线性数据结构的是() A . 队列 B . 线性表 C . 二叉树 D . 栈 答案:A,B,D 6 . 下列说法正确的是() A . 边界标识法是操作系统中用以进行 动态分区分配的一种存储管理方法 B . 伙伴系统是一种动态存储管理方 法。
C . 存储紧缩是一种动态存储管理方法 D . 存储紧缩的优点是算法简单、速度快 答案:A,B,C结点的存储地址 D . 插入、删除操作方便,不必 移动结点 A .解析:B . C .7 . 下列说法正确的选项有( ). D . A . 栈和队列是两种操作受限的线性 表. B . 栈限定仅在表尾进行插入或删除操 作. C . 队列只允许在表的一端进行插入, 而在另一端删除. D . 双端队列是限定在表的两端进行插 入或删除操作. 答案:A,B,C,D 10 . 线性表的两种存储结构叙述正确的是 A . 线性表顺序存储结构可以随机存取 表中任一元素 B . 线性表链式存储结构只能顺序存取 表中任一元素 解析: 对比记忆栈和队列的基本概念. C . 线性表顺序存储结构在插入或删除 某一元素时,需要移动大量元素 8 . 如下陈述中错误的是( ) A . 串是一种特殊的线性表 B . 串的长度必须大于零 C . 串中元素只能是字母 D . 空串就是空白串 答案:B,C,D 11 . 下列数据结构中,属于线性数据结构的是 ____ A . 栈 B . 队列 9 . 下列关于链式存储结构, 那一项是正确的 ) ( A . 结点除自身信息外还包括指针域,因此存储 密度小于顺序存储结构 B . 逻辑上相邻的结点物 理上不必邻接 C . 可以通过计算直接确定第 i 个 C . 树 D . 图 答案:A,B 解析: D . 线性表链式存储结构在插入或删除 某一元素时,不需要移动大量元素 答案:A,B,C,D 解析: 答案:A,B,D解析:答案:A,B,C,D 解析: 解析: 12 . 下列哪一条不是顺序存储结构的优点? A . 存储密度大 B . 插入运算方便 C . 可方便的用于各种逻辑结构的存储 表示 D . 删除运算方便 答案:B,C,D 15 . 下面关于线性表的叙述正确的是( )。
A . 线性表采用顺序存储必须占用一片 连续的存储空间 B . 线性表采用链式存储不必占用一片 连续的存储空间 C . 线性表采用链式存储便于插入和删 除操作的实现 D . 线性表采用顺序存储便于插入和删 解析: 除操作的实现 答案:A,B,C 13 . 下列哪些结构是非线性结构? A . 图 B . 队列 C . 线性表 D . 树 答案:A,D 16 . 线性表的特点正确的() A . 存在唯一的一个被称作”第一个 “的数据元素。
B . 不存在唯一的一个被称作”第一个 “的数据元素。
解析: C . 存在唯一的一个被称作”最后一个 “的数据元素。
D . 不存在唯一的一个被称作”最后一 14 . 便于插入和删除操作的是() A . 静态链表 B . 单链表 解析: C . 双链表 D . 循环链表 17 . 下列哪些是图的遍历 个“的数据元素。
答案:A,C解析:A . 深度优先搜索 B . 广度优先搜索解析:20 . 下列说法正确的是: C . 先根遍历 D . 中根遍历 答案:A,B A . 线性结构只能用顺序结构来存放, 非线性结构只能用非顺序结构来存放 B . 算法就是程序 C . 数据元素是数据的最小单位 解析: 象 18 . 下列不属于数组的主要操作的是( ) A . 存取 B . 修改 C . 插入 D . 删除 A . 静态链表 E . 检索(查找) 答案:C,D B . 单链表 C . 顺序表 解析: D . 双链表 E . 循环链表 19 . 一下关于线性结构特点的描述正确的是 A . 存在唯一的一个被称作“第一个” 的数据元素 B . 存在唯一的一个被称作“第二个” 的数据元素 C . 除第一个之外,集合中的每个数据 元素均只有一个前驱 D . 它是最原始的一种数据结构 答案:A,C 1 . 以下说法正确的是() A . 二叉树的特点是每个结点至多只有两棵 子树。
答案:A,B,D,E √× 解析: 1 . 根据初始关键字序列(19,22,01,38,10) 建立的二叉排序树的高度为 答案:3 E . 数据结构是数据对象与对象数据元 素之间关系的集合 F . 数据的逻辑结构是指各数据元素之 间的逻辑关系,是用户按使用需要建立的 答案:A,B,E,F 1 . 便于插入和删除操作的是() D . 数据结构是具有结构结构的数据对B . 二叉树的子树无左右之分。
C . 二叉树只能进行链式存储。
D . 树的结点包含一个数据元素及若干指向 其子树的分支。
答案:A,D √× 解析: 1 . 二叉树的先序遍历顺序是 abdgfhice,则二 叉树的根结点是 答案:a 1 . 下列属于算法的重要特征的是: A . 有穷性 B . 确定性 C . 可行性 D . 输入和输出 答案:A,B,C,D √× 解析: 1 . 算法的计算量的大小称为计算的( ) A . 效率 B . 复杂性 C . 现实性 (填小写字母)E . 易读性 F . 稳定性 答案:A,C,D 1 . 在任何问题中, 数据元素都不是孤立存在的, 而是在它们之间存在着某种关系,这种数据元素 相互之间的关系称为结构。
根据数据元素之间关 系的不同特性,下面的选项中( )属于其基本 结构。
A . 集合 B . 线性结构 C . 树形结构 D . 图状结构 答案:A,B,C,D √× 解析: 1 . 哪种情况下应当采用链表表示?( ) A . 经常需要随机地存取元素 B . .经常需要进行插入和删除操作 C . 表中元素需要占据一片连续的存储空间 D . 表中元素的个数不变 答案:B 1 . 下列说法正确的是 A . 在图形结构中,结点之间的关系可以是D . 难度 答案:C 1 . 计算机算法必须具备________________等特 性。
A . 可行性、确定性 B . 可行性、可移植性 C . 输入、输出 D . 有穷性任意的 B . 在树形结构中,数据元素之间没有明显 的层次关系 C . 在树形结构中,数据元素之间仅有线性 关系 D . 在线性表中,数据元素之间仅有线性关 系 答案:A,B,D 1 . 一个线性表第一个元素的存储地址是 100,每个元素的长度为 2,则第 5 个元素的地址是( ) A . 110 B . 108 C . 100 B . 数据 D . 120 答案:B √× 解析: C . 数据结构 D . 数据类型 答案:B √× 2 . 数据的四种存储结构是( ) A . 顺序存储结构、链接存储结构、索引存 储结构和散列存储结构 B . 线性存储结构、非线性存储结构、树型 存储结构和图型存储结构 C . 集合存储结构、一对一存储结构、一对 多存储结构和多对多存储结构 C . Pop(S) D . 顺序存储结构、树型存储结构、图型存 储结构和散列存储结构 答案:A √× 解析: D . empty(S) 答案:D √× 解析: 答案:D 5 . 在以下栈的基本运算中,不是加工型运算的 是 ( ) A . lnitStack(S) B . Push(S,X) 解析: 4 . 计算机识别、存储和加工处理的对象被统称 为() A . 数据元素3 . 判定一个有向图中是否存在回路可以利用 () 的方法。
A . 求最小生成树6 . 下面结论中正确的是()。
A . 在无向图中,边的条数是结点度数之和。
B . 在图结构中,结点可以没有任何前趋和B . 求最短路径 C . 拓扑排序 D . 图的遍历 答案:C √× 解析:后继。
C . 在 n 个结点的无向图中, 若边数大于 n-1, 则该图必是连通图。
D . 图的邻接矩阵必定是对称矩阵。
答案:B √×解析:7 . 与单链表相比,双链表的优点之一是____。
A . 插入、删除操作更简单 B . 可以进行随机访问 C . 可以省略表头指针或表尾指针 D . 顺序访问相邻结点更灵活 答案:D √× 解析:10 . 设输入序列是 1、2、3、„„、n,经过栈 的作用后输出序列的第一个元素是 n,则输出序 列中第 i 个输出元素是 ) (A) n-i (B) n-1-i ( 。
(C) n+1-i (D) 不能确定 A . B . C . D . 答案:C √× 解析:8 . 下面数据结构中属于非线性的是() A . 线性表 B . 队列 C . 树 D . 栈 答案:C √× 解析:11 . 在某线性表中最常用的操作是在最后一个 元素之后插入一个元素和删除最后一个元素,则 采用()存储方式最节省运算时间。
A . 单链表 B . 双链表 C . 带头结点的双循环链表 D . 容量足够大的顺序表 答案:D √× 解析:9 . 树最合适用来表示() A . 有序数据元素 B . 无序数据元素 C . 元素之间具有分支层次关系的数据 D . 元素之间无联系的数据 答案:C √× 解析: D . N0=2N1+1 答案:C √× 12 . 设某二叉树中度数为 0 的结点数为 N0,度 数为 1 的结点数为 N1,度数为 2 的结点数为 N2, 则下列等式成立的是? A . N0=N1+1 B . N0=N1+N2 C . N0=N2+1解析:答案:B √× 解析:13 . 设一棵二叉树中有3个叶子结点,有8个 度为1的结点,则该二叉树中总的结点数为 A . 12 B . 13 C . 14 D . 15 答案:B √× 解析: 16 . 在一个具有 N 个单元的顺序表中,假定以地 址低端(即下标为 1 的单元)作为底,以 top 作为 顶指针,则当做进栈处理时 top 变化为______。