数据结构复习及参考题新版.docx
- 文档编号:8622419
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:56
- 大小:50.59KB
数据结构复习及参考题新版.docx
《数据结构复习及参考题新版.docx》由会员分享,可在线阅读,更多相关《数据结构复习及参考题新版.docx(56页珍藏版)》请在冰豆网上搜索。
数据结构复习及参考题新版
数据结构复习参考题
(适用计算机本科生使用)
(内部资料)
说明:
此复习题按照考试大纲的要求收集整理,希望同学们能认真复习,如果在使用过程中有问题,请及时与老师取得联系以便及时更正。
一、选择题:
1、在数据结构的讨论中把数据结构从逻辑上分为()。
A、内部结构与外部结构B、静态结构与动态结构
C、线性结构与非线性结构 D、紧凑结构与非紧凑结构
2、下面程序段的时间复杂度为()。
for(inti=0;i for(intj=0;j a[i][j]=i*j; A、O(m2)B、O(n2)C、O(m*n)D、O(m+n) 3、执行下面程序段时,执行S语句的次数为()。 for(inti=1;i<=n;i++) for(intj=1;j<=i;j++) S; A、n2B、n2/2C、n(n+1)D、n(n+1)/2 4、一个栈的输入序列为1,2,3,4,下面哪一个序列不可能是这个栈的输出序列( ). A、1,3,2,4B、2,3,4,1 C、4,3,1,2D、3,4,2,1 5、单链表中,增加头结点的作用是()。 A、方便运算的实现B、用于标志单链表 C、使单链表中至少有一个结点D、用于标志起始结点 6、采用顺序搜索方法查找长度为n的顺序表时,搜索成功的平均搜索长度为( )。 A、n B、n/2 C、(n-1)/2 D、(n+1)/2 7、下列排序方法中,哪一种方法的比较次数与记录的初始排列状态无关? () A、直接插入排序 B、起泡排序 C、快速排序 D、直接选择排序 8、设有两个串t和p,求p在t中首次出现的位置的运算叫做()。 A、求子串B、模式匹配C、串替换D、串连接 9、将一个递归算法改为对应的非递归算法时,通常需要使用()。 A、栈B、队列C、循环队列D、优先队列 10、下列序列中,( )是执行第一趟快速排序后得到的序列(排序的关键字类型是字 符串)。 A、[ax,bb,cd,da]ff[eb,gc,ha] B、[cd,eb,ax,da]ff[ha,gc,bb] C、[gc,ax,eb,cd,bb]ff[da,ha]D、[da,ax,eb,de,bb]ff[ha,gc] 11、若一棵二叉树具有10个度为2的结点,则该二叉树的度为0的结点个数是() A、9 B、11 C、12 D、不确定 12、若用数组S[1..n]作为两个栈S1和S2的共同存储结构,对任何一个栈,只有当S全 满时才不能作入栈操作。 为这两个栈分配空间的最佳方案是( )。 A、S1的栈底位置为0,S2的栈底位置为n+1 B、S1的栈底位置为0,S2的栈底位置为n/2 C、S1的栈底位置为1,S2的栈底位置为n D、S1的栈底位置为1,S2的栈底位置为n/2 13、在有n个结点的二叉链表中,值为非空的链域的个数为( )。 A、n-1 B、2n-1 C、n+1 D、2n+1 14、对二叉树从1开始进行连续编号,要求每个结点的编号大于其左右孩子的编号,同一 个结点的左右孩子中,其左孩子的编号小于其右孩子的编号,则可采用()遍历实现 编号。 A、无序 B、中序 C、后序 D、从根开始的层次遍历 15、某二叉树的中序序列和后序序列正好相反,则该二叉树一定是( )的二叉树。 A、空或只有一个结点 B、高度等于其结点数 C、任一结点无左孩子 D、任一结点无右孩子 16、有64个结点的完全二叉树的深度为( )(根的层次为1)。 A、8 B、7 C、6 D、5 17、n个顶点的连通图至少有()条边。 A、n-1 B、n C、n+1 D、0 18、使用哈希表的目的是()。 A、插入 B、删除 C、快速查找 D、排序 19、在已知待排序文件已基本有序的前提下,效率最高的排序方法是() A、直接插入排序B、直接选择排序C、快速排序D、归并排序 20、下列排序算法中,()排序在某趟结束后不一定选出一个元素放到其最终的位置上。 A、选择B、冒泡C、归并D、堆 21、带权有向图G用邻接矩阵A存储,则顶点i的人度等于A中()。 A、第i行非∞的元素之和 B、第i列非∞的元素之和 C、第i行非∞的元素个数 D、第i列非∞的元素个数 22、若某链表中最常用的操作是在最后一个结点之后插入一个结点和删除最后一个结点, 则采用()存储方式最节省运算时间。 A、单链表 B、双链表 C、单循环链表 D、带头结点的双循环链表 23、串是()。 A、不少于一个字母的序列B、任意个字母的序列 C、不少于一个字符的序列D、有限个字符的序列 24、链表不具有的特点是(). A、可随机访问任一元素B、插入删除不需要移动元素 C、不必事先估计存储空间D、所需空间与线性表长度成正比 25、在有向图中,所有顶点的入度之和是所有顶点的出度之和的()倍。 A、2 B、1 C、0.5 D、不确定 26、在一个具有n个单元的顺序栈中,假设栈底是存储地址的低端,现在我们以top作 为栈顶指针,则作退栈操作时,top的变化是()。 A、top=top-1 B、top=top+1 C、top不变 D、top不确定 27、链栈和顺序栈相比较,有一个明显的特点是()。 A、链栈通常不会出现栈满的情况 B、链栈通常不会出现栈空的情况 C、链栈的插入操作更加方便 D、链栈的删除操作更加方便。 28、在一个链队中,假设f和r分别为队首和队尾指针,删除一个结点的运算是()。 A、r=f—>next B、r=r—>next C、f=f—>next D、f=r—>next 29、向一个栈顶指针为top的链栈中插入一个s所指结点时,其操作步骤是()。 A、top—>next=s B、s—>next=top;top=s; C、s—>next=top—>next;top—>next=s; D、s—>next=top;top=top—>next 30、在有n个叶子结点的哈夫曼树中,其结点总数为()。 A、不确定B、2nC、2n+1D、2n-1 31、任何一个无向连通图的最小生成树() A、只有一棵B、有一棵或多棵C、一定有多棵D、可能不存在 32、我们对记录进行排序的目的是()。 A、分类 B、合并 C、存储 D、查找 33、在一个具有n个结点的有序单链表中插入一个新结点并仍然有序的时间复杂性为()。 A、O (1) B、O(n) C、O(n2) D、O(log2n) 34、广义表((A,B,E,F,G))的表尾是()。 A、(B,E,F,G) B、() C、(A,B,E,F,G) D、不存在 35、广义表(((),()),(a,b,c),(e,d))的表头是(),表尾是()。 A、((e,d)) B、(()) C、((),()) D、((a,b,c),(e,d)) 36、对广义表A=((a),(b))进行下面的操作head(head(A)后的结果是()。 A、a B、(a) C、() D、不确定 37、广义表(A,B,E,F,G)的表尾是()。 A、(B,E,F,G) B、() C、(A,B,E,F,G) D、(G) 38、如果待排序的记录的规模很大,则在下面的排序方式中,我们最好不要选择使用()。 A、快速排序 B、直接插入排序 C、堆排序 D、归并排序 39、在最坏的情况下,冒泡排序法的时间复杂度为()。 A、O(logn) B、O(nlogn) C、O(n) D、O(n*n) 40、在一个长度为n的顺序存储的线性表中,向第i个元素(1≤i≤n+1)之前插入一个新 元素时,需要从年向前依次移()个元素。 A、n-iB、n-i+1C、n-i-1D、i 41、在一个长度为n的线性表中顺序查找值为x的元素时,查找成功的平均查找长度(即 x同元素的平均比较次数,假定查找每个元素的概率都相等)为() A、nB、n/2C、(n+1)/2D、(n-1)/2 42、在一个单链表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; 43、在一个单链表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=pD、p->next=q->next;q->next=p; 44、在一个单链表HL中,若要删除由指针q所指向结点的后继结点,则执行()。 A、p=q->next;p->next=q->next;B、p=q->next;q->next=p; C、p=q->next;q->next;q->next=q;D、q->next=q=->next->next;q->next=q; 45、栈的插入与删除操作在()进行。 A、栈顶B、栈底C、任意位置D、指定位置 46、当利用大小为N的数组顺序存储一个栈时,假定用top==N表示栈空,则向这个栈 插入一个元素时,首先应执行()语句修改top指针。 A、top++1B、top--C、top=0D、top 47、在一个顺序队列中,队首指针指向队首元素的()位置。 A、前一个B、后一个C、当前D、后面 48、当利用大小为N的数组顺序存储一个队列时,该队列的最大长度为()。 A、N-2B、N-1C、ND、N+1 49、从一个顺序队列删除元素时,首先需要()。 A、前移一个队首指针B、后移一位队首指针 C、取出队首指针所指位置上的元素D、取出队尾指针所指位置上的元素 50、假定一个顺序队列的队首和队尾指针分别为f和r,则判断队空指针的条件为()。 A、f+1==rB、r+1==fC、f==0D、f==r 51、假定一个链队的队首和队尾指针分别为fron和rear,则判断队空的条件为()。 Afron==rearBfron! =NULLCrear! =NULLDfron==NULL 52、从二叉搜索树中查找一个元素时,其时间复杂度大致为()。 A、O(n)B、O (1)C、O(log2n)D、O(n2) 53、向二叉搜索树中插入一个元素时,其时间复杂度大致为()。 A、O (1)B、O(log2n)C、O(n)D、O(nlog2n) 54、根据n个元素建立一棵二叉搜索树时,其时间复杂度大致为()。 A、O(n)B、O(log2n)C、O(n2)D、O(nlog2n) 55、从堆中删除一个元素的时间复杂度为()。 A、O (1)B、O(n)C、O(log2n)D、O(nlog2n) 56、向堆中插入一个元素的时间复杂度为()。 A、O(log2n)B、O(n)C、O (1)D、O(nlog2n) 57、权值分别为3,8,6,2,5的叶子结点生成一棵哈夫曼树,它的带权路径长度为()。 A、24B、48C、72D、51 58、设只含根结点的二叉树的高度为0,则高度为k的二叉树的最大结点数为() A、2kB、2k+1-1C、2k-1D、2k-1-1 59、在已知待排序文件已基本有序的前提下,效率最高的排序方法是() A、直接插入排序B、直接选择排序C、快速排序D、归并排序 60、向一个有127个元素原顺序表中插入一个新元素并保存原来顺序不变,平均要移动()个元素。 A、8 B、63.5 C、63 D、7 61、设有一个二维数A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存放位置在676(10),每个元素占一个空间,则A[4][5]在()位置,(10)表明用10进数表示。 A、692(10) B、626(10) C、709(10) D、724(10) 62、一个有序顺序表有255个对象,采用顺序搜索法查表,搜索长度为()。 A、128B、127C、126D、255 63、用二分查找方法查找长度为n的线性表时,每个元素的平均查找长度为()。 A、O(n) B、O(log2n) C、O(n2) D、O (1) 64、将一棵有100个结点的完全二叉树从根这一层开始,每一层上从左到右依次对结点进行编号,根结点的编号为1,则编号为49的结点的左孩子编号为()。 A、98B、99C、50D、48 65、用n个键值构造一棵二叉排序树,最低高度为()。 A、n/2B、nC、2nD、log2n 66、折半查找要求查找表中各元素的关键字值必须是()排列。 A、 递增或递减B、递增C、递减D、无序 67、对于关键字值序列(12,13,11,18,60,15,7,18,25,100),用筛选法建堆,必须从关键字值为_()的结点开始。 A、100B、12C、60D、15 68、下面的查找方式中,可以对无序表进行查找的是()。 A、顺序查找 B、二分查找 C、二叉排序树D、哈希查找 69、非空的循环单链表head的尾结点(由指针p所指)满足()。 A、p—>next==NULL B、p—>next==head C、p==NULL D、P==head 70、对于一个具有N个顶点的图,如果我们采用邻接矩阵法表示,则此矩阵的维数应该 是()。 A、(N-1)×(N-1) B、N×N C、(N+1)×(N+1) D、不确定 71、对于一个具有N个结点和E条边的无向图,若采用邻接表表示,则表头向量的大小 是()。 A、N B、N+1 C、N-E D、N-1 72、判断一个有向图是否存在回路的方法中,除了可以利用拓扑排序方法外,还可以利 用的方法是()。 A、求最短路径的方法 B、求关键路径的方法 C、深度优先遍历的方法 D、广度优先遍历的方法 73、一个具有N个顶点的有向图最多有()条边。 A、N(N-1)/2 B、N(N-1) C、N(N+1) D、N(N+1)/2 74、某算法的时间代价为T(n)=100n+10nLog2n+n2+10,其时间复杂度为() A、O(n)B、O(nlog2n)C、O(n2)D、O (1) 75、不带头结点的单链表first为空的判定条件是() A、first=NullB、first->link=Null C、first->link=firstD、first! =Null 76、树中所有结点的度之和等于所有结点数加() A、0B、1C、-1D、2 77、一棵具有35个结点的完全二叉树的高度为(),假定树根的高度为1 A、5B、6C、7D、8 78、对于具有e条边的无向图,它的邻接表中有()边结点 A、e-1B、eC、2(e-1)D、2e 79、图的深度优先搜索类似于树的()次序遍历。 A、先根B、中根C、后根D、层次 80、设有向图有N个顶点和e条边,采用邻接表作为其存储表示,在进行拓扑排序时,总 的计算时间为() A、O(nlog2e)B、O(n+e)C、O(ne)D、O(n2) 81、在非空的循环双链表中q所指的结点前插入一个由p所指结点的过程依次为: p->next=q;p->prior=q->prior;q->prior=p;和()。 A、q->next=pB、q->prior->next=pC、p->prior->next=pD、p->next->prior=p 82、在连通具有n个顶点的有向图,至少需要()条边。 A、n-1B、nC、n+1D、2n 83、以知有向图G=(V,E),其中V={V1,V2,V3,V4,V5,V6,V7}, E={ V6,V7>}则G的可能拓扑序列为: A、V1,V3,V4,V6,V2,V5,V7B、V1,V3,V2,V6,V4,V5,V7 C、V1,V3,V4,V5,V2,V6,V7D、V1,V2,V5,V3,V4,V6,V7 84、设有一个N*N的对称矩阵A,将其下三角部分存入一个一维数组B中,A[0][0]存入 B[0]中,那么第i行的对角元素A[i][i]存入于B中的()处。 A、(i+3)*i/2B、(i+1)*i/2C、(2N-i+1)*i/2D、(2N-i-1)*i/2 85、不带头结点的单链表first为空的判定条件是() A、frist==NULLB、frist->next==NULLC、first->next==firstD、frist! =NULL 86、在一个棵具有N个结点的完全二叉树中,树枝结点的最大编号是()设按层次编号, 且树根的编号为0。 A、(n-1)」/2B、n/2」C、「n/2D、n/2」-1 87、对于长度为N的顺序存储的有序表,若采用折半搜索,则对所有元素的搜索长度中最大的为()的值向上取整。 A、log2(N+1)B、log2NC、n/2D、(n+1)/2 88、对于长度为18的有序顺序表进行折半搜索,则搜索第15个元素的搜索长度为() A、3B、4C、5D、6 89、对于长度为10的顺序表进行搜索,若搜索前5个元素的概率相同均为1/8,搜索后 5个元素的概率均为3/40,则搜索任一元素的平均搜长度为() A、5.5B、5C、39/8D、19/4 90、对于一个有向图的,其邻接矩阵表示比邻接表表示更易于() A、求一个顶点的入度 B、求一个顶点的出边邻接点 C、进行图的浓度优先遍历 D、进行图的广度优先遍历 91、利用n个权值作为叶子结点的生成的哈夫曼树中共包含()个结点 A、nB、n+1C、2*nD、2*n-1 92、在一个带权的连通图G中,权值最小的边一定包含在G的()中。 A、最小生成树中B、生成树中C、广度优先生成树中D、深度优先生成树中 93、与邻接矩阵相比,邻接表更适合存储() A、无向图B、连通图C、稀疏图D、稠密图 94、设无向图的顶点的个数为n,则该图的最多有()条边。 A、n-1B、n(n-1)/2C、n(n+1)/2D、n(n-1) 95、如果想在4092个数据中只需要选择其中的最小的10个,采用()方法最好。 A、起泡法B、堆排序C、直接选择法D、快速排序 96、给定有n个元素的向量,建立一个有序的单链表的时间复杂度为()。 A、O (1)B、O(n)C、O(n*n)D、O(nlog2n) 97、在系统实现递归调用时需利用递归工作记录保存(),当递归调用结束时通过它将控制转到上层调用程序。 A、调用地址B、递归入口C、返回地址D、递归出口 98、设一个广义表的A(a),其表尾为(). A、aB、(())C、()D、(a) 99、对于具有e条边的无向图,它的邻接表中有()个边结点。 A、e-1B、eC、2(e-1)D、2e 100、向一棵AVL树插入元素,可能引起最小不平衡子树的调整过程,此调整分为()种 A、2B、3C、4D、5 二、判断题 1、直接选择排序是一种不稳定的排序方法。 2、折半搜索只适用于有序表,包括有序的顺序表和有序的链表。 3、栈与队列都是限制存取点的表,只是它们的存取特征不一样。 4、在链队列中,即使不设置尾指针也能进行入队操作。 5、如果一个串中的所有字符均在另一串中出现,则说前者是后者的子串。 6、双循环链表中,任一结点的后继指针均指向其逻辑后继。 7、二路归并排序的核心操作是将两个有序序列归并为一个有序序列。 8、对任意一个图,从它的某个顶点出发进行一次深度优先或广度优先搜索遍历可访问到该图的每个顶点。 9、一个有向图的邻接表和逆邻接表中的结点个数一定相等。 10、在索引顺序表上实现分块查找,在等概率查找情况下,其平均查找长度不仅与表的个数有关,而且与每一块中的元素个数有关。 11、在顺序表中取出第i个元素所花费的时间与i成正比。 12、在执行某个排序算法过程中,出现了排序码朝着最终排序序列相反方向移动,则该算法是不稳定的。 13、折半搜索只适用于有序顺序表。 14、将一棵树转换成一棵二叉树之后,二叉树的根结点的右子树必定为空。 15、任何有向图的结点都可以排成拓扑排序,而且拓扑排序不唯一。 16、当改变网上某一关键路径上任一关键活动后,必将产生不同的关键路径。 17、串长度是指串中不同字符的个数。 18、一棵树的度是指该树中所有结点的度的和。 19、在完全二叉树中,一个结点若没有左孩子,则它一定没有右孩子。 20、顺序存储的数组是一个随机存取结构。 21、将一个对角阵按照行优先或者对角线的顺序压缩到一个向量中时,对应的存储结构是 一种随机的存取结构。 22、从树的根结点到树中其余结点均存在一条惟一的路径。 23、满二叉树一定是完全二叉树,并且完全二叉树也一定是满二叉树。 24、对非空的广义表的表头和表尾总是一个广义表。 25、若V(G)中有两个不同的顶点都是连通的,则G就称为是连通图。 26、任何图的连通分量只有一个。 27、直接选择排序是一种就地排序方法,它是一种稳
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 复习 参考 新版
![提示](https://static.bdocx.com/images/bang_tan.gif)