数据结构练习题
- 格式:doc
- 大小:213.00 KB
- 文档页数:21
数据结构练习题一、单项选择1、组成数据的基本单位是()。
A. 数据项B. 数据类型C. 数据元素D.数据变量2、线性表的链接实现有利于()运算。
A. 插入B. 读表元素C. 查找D. 定位3、串的逻辑结构与()的逻辑结构不同。
A. 线性表B. 栈C. 队列D. 树4、二叉树第i(i>=1)层上至多有()结点。
A. 2iB. 2iC. 2i-1D. 2i-15、设单链表中指针P指着结点A ,若要删除A之后结点(若存在),则需要修改指针的操作为()。
A. p->next=p->next->nextB. p=p->nextC. p=p->next->nextD. P->next=p6、设一数组的顺序为1,2,3,4,5,6,通过栈结构不可能排成的顺序数列为()。
A. 3,2,5,6,4,1B. 1,5,4,6,2,3C. 2,4,3,5,1,6D. 4,5,3,6,2,17、设字符串S1=‘ABCDEFG’,S2=‘PQRST’,则运算S=CONCAT(SUB(S1,2,LENGTH (S2),SUB(S1,LENGTH(S2),2))后结果为()。
A. ’BCQR’B. ’BCDEF’C. ’BCDEFG’D. ’BCDEFEF’8、设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a11为第一个元素,其存储地址为1,每元素占1个地址空间,则a85的地址为()。
A. 13B. 33C. 18D. 409、如果结点A有3个兄弟,而且B为A的双亲,则B的度为( )。
A. 3B. 4C. 5D. 110、线索化二叉树中某结点D,没有左孩子的主要条件是()。
A. D->Lchild=NullB. D->ltag=lC. D->Rchild=NullD. D->ltag=011、下列数据结构中,( )不都是线性结构。
A.栈和队列B.队列和数组C.数组和串D.文件和队列12、为了最快地对线性结构的数据进行某数据元素的读取操作,则其数据存储结构宜采用( )方式。
A.顺序存储B.链式存储C.索引存储D.散列存储13、设双链表中结点的前趋指针和后继指针的域名分别为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;14、假设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.以上都不对15、由下列三棵树组成转的森林换成一棵二叉树为( )16、具有100个结点的完全二叉树的深度为( )A.6B.7C.8D.917、已知一个稀疏矩阵的三元组表如下:(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)18、无向图的邻接矩阵是一个( )A.对称矩阵B.零矩阵C.上三角矩阵D.对角矩阵19、索引非顺序文件中的索引表是( )A.非稠密索引B.稠密索引C.主索引D.多级索引20、对n个记录的文件进行堆排序,最坏情况下的执行时间为( )A.O(log2n)B.O(nlog2n)C.O(n)D.O(n2)21、数据结构是研究数据的( )以及它们之间的相互关系。
A. 理想结构,物理结构B. 理想结构,抽象结构C. 物理结构,逻辑结构D. 抽象结构,逻辑结构22、线性表采用链式存储时,其地址( )。
A. 必须是连续的B. 部分地址必须是连续的C. 一定是不连续的D. 连续与否均可以23、串的逻辑结构与( )的逻辑结构不相同。
A. 线性表B. 栈C. 队列D. 查找表(集合)24、完成堆排序的全过程需要( )个纪录大小的辅助空间。
A. 1B. nC. nlog2nD. |nlog2n|25若给定的关键字集合为{20,15,14,18,21,36,40,10},一趟快速排序结束时,键值的排列为( )。
A. 10,15,14,18,20,36,40,21B. 10,15,14,18,20,40,36,21C. 10,15,14,20,18,40,36,21D. 15,10,14,18,20,36,40,2126、有一棵二叉树如下图,该树是( )。
A. 二叉平衡树B. 二叉排序树C. 堆的形状D. 以上都不是27、对于含有n个顶点e条边的无向连通图,利用Prim算法生成最小代价生成树其时间复杂度为( ),利用Kruskal时间复杂度为( )。
A. O(log2n)B. O(n2)C. O(ne)D. O(elog2e)28、n个顶点的强连通图至少有( )边。
A. nB. n+1C. n-1D. n(n-1)29、设有100个元素,用二分法查找时,最大比较次数是(),最小比较次数为()。
A. 25B. 7C. 10D. 130、在内部排序中,排序时不稳定的是( )。
A. 插入排序B. 冒泡排序C. 快速排序D. 归并排序31、下列数据组织形式中,()的结点按逻辑关系依次排列形成一个“锁链”。
A.集合B.树形结构C.线性结构D.图状结构32、数据结构可以形式化地定义为(S,△),其中S指某种逻辑结构,△是指()A.S上的算法B.S的存储结构C.在S上的一个基本运算集D.在S上的所有数据元素33、下列说法正确的是()A.线性表的逻辑顺序与存储顺序总是一致的B.线性表的链式存储结构中,要求内存中可用的存储单元可以是连续的,也可以不连续C.线性表的线性存储结构优于链式存储结构D.每种数据结构都具有插入、删除和查找三种基本运算34、设非空单链表的数据域为data,指针域为next,指针p指向单链表中第i个结点,s指向已生成的新结点,现将s结点插入到单链表中,使其成为第i个结点,下列算法段能正确完成上述要求的是()A.s->next=p->next;p->next=s;B.p->next=s;s->next=p->next;C.s->next=p->next;p->next=s;交换p->data和s->data;D.p=s;s->next=p;35、.稀疏矩阵一般采用()方法压缩存储。
A.三维数组B.单链表C.三元组表D.散列表36、树若用双亲链表表示,则()A.可容易地实现求双亲及子孙的运算B.求双亲及子孙的运算均较困难C.可容易地实现求双亲运算,但求子孙运算较困难D.可容易地实现求子孙运算,但求双亲运算较困难37、将一棵有50个结点的完全二叉树按层编号,则对编号为25的结点x,该结点()A.无左、右孩子B.有左孩子,无右孩子C.有右孩子,无左孩子D.有左、右孩子38、如果从无向图的任一顶点出发进行一次深度优先搜索即可访问所有顶点,则该图一定是()A.完全图B.连通图C.有回路D.一棵树39、在对查找表的查找过程中,若被查找的数据元素不存在,则把该数据元素插入到集合中。
这种方式主要适合于()A.静态查找表B.动态查找表C.静态查找表与动态查找表D.两种表都不适合40、文件存储的基本单位是( )。
A.记录B.数据项C.属性D.关键字41、ADT表的数组实现的读表元算法的平均时间复杂度量级为( )。
A. O(n)B. O(nlog2n)C. O(1)D. O(n2)42、深度为k且为( )个结点的二叉树称为满二叉树(设根结点处于第1层)。
A. 2k-lB. 2kC. 2k-1D. 2k-143、对于下图V1的度为( )A. 1B. 2C. 3D. 444、中根遍历一棵二叉排序树所得到的结点访问序列是键值的( )序列。
A. 递增或递减B. 递减C. 递增D. 无序45、已知某图的邻接表如下:此邻接表所对应的无向图为( )。
A. B.C.46、 快速排序在( )情况下最不利于发挥其长处。
A. 被排序的数据量太大B. 被排序数据中含有多个相同的关键字C. 被排序的数据完全无序D. 被排序的数据已基本有序47、下列哪种排序需要的附加存储开销最大( )。
A. 快速排序B. 堆排序C. 插入排序D. 冒泡排序48、对任何一棵二叉树T ,设n 0,n 1,n 2分别是度数为0,1,2的结点数,则n 0=( )。
A. n 0=n 1+1B. n 0=-n 1+n 2C. n 0=n 2+lD. n 0=2n 1+149、折半查找过程可以用二叉树形象地说明,实际上这种方法是从二叉树的根结点开始到叶子的查找过程。
假设结点数为n ,深度为d ,则比较的次数不超过二叉树的深度d=( )A. |log 2n 」+1B. 「log 2n|-1C. |log 2n 」D. 「log 2n|50、组成数据的基本单位是( )。
A. 数据项B. 数据类型C. 数据元素D. 数据变量51、线性表的链接实现有利于( )运算。
A. 插入B. 读表元素C. 查找D. 定位52、串的逻辑结构与( )的逻辑结构不中。
A. 线性表B. 栈C. 队列D. 查找表53、Substr(‘DATASTRUCTURE’,5,9)=()A. ‘STRUCTURE’B. ‘DATA’C. ‘ASTRUCTUR’D. ‘DATASTRUCTURE’54、下列哪种排序需要的附加存储开销最大。
( )A. 快速排序B. 堆排序C. 归并排序D.插入排序55、下列哪种排序算法是不稳定的。
( )A. 快速排序B. 冒泡排序C. 归并排序D. 直接插入排序56、设有1000个元素,用二分查找时,最大比较次数是()。