MOOC 数据结构-华中科技大学 中国大学慕课答案_第1页
MOOC 数据结构-华中科技大学 中国大学慕课答案_第2页
MOOC 数据结构-华中科技大学 中国大学慕课答案_第3页
MOOC 数据结构-华中科技大学 中国大学慕课答案_第4页
MOOC 数据结构-华中科技大学 中国大学慕课答案_第5页
已阅读5页,还剩88页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

MOOC数据结构-华中科技大学中国大学慕课答案第一章绪论单元测试1、问题:______是数据的最小单位。选项:A、数据项B、数据元素C、信息项D、表元素正确答案:【数据项】2、问题:以下说法不正确的是______。选项:A、数据可由若干个数据元素构成B、数据项可由若干个数据元素构成C、数据元素是数据的基本单位D、数据项是不可分割的最小标识单位正确答案:【数据项可由若干个数据元素构成】3、问题:数据结构是指______的集合以及它们之间的关系。选项:A、计算方法B、数据元素C、结构D、数据正确答案:【数据元素】4、问题:计算机所处理的数据一般具备某种内在联系,这是指______。选项:A、元素内部具有某种结构B、数据项和数据项之间存在某种关系C、元素和元素之间存在某种关系D、数据和数据之间存在某种关系正确答案:【元素和元素之间存在某种关系】5、问题:在数据结构中,与所使用的计算机无关的是数据的______结构。选项:A、物理B、逻辑和存储C、存储D、逻辑正确答案:【逻辑】6、问题:数据的逻辑结构可以分为______两类。选项:A、紧凑结构和非紧凑结构B、动态结构和静态结构C、内部结构和外部结构D、线性结构和非线性结构正确答案:【线性结构和非线性结构】7、问题:数据的逻辑结构是指______关系的整体。选项:A、数据元素之间逻辑B、数据项之间逻辑C、数据类型之间D、存储结构之间正确答案:【数据元素之间逻辑】8、问题:以下是数据结构中______属非线性结构。选项:A、栈B、串C、队列D、平衡二叉树正确答案:【平衡二叉树】9、问题:以下属于逻辑结构是______。选项:A、顺序表B、有序表C、双链表D、单链表正确答案:【有序表】10、问题:以下不属于存储结构是______。选项:A、顺序表B、单链表C、邻接表D、线性表正确答案:【线性表】11、问题:在计算机中存储数据时,通常不仅要存储各数据元素的值,而且还有存储______。选项:A、数据的处理方法B、数据元素的类型C、数据元素之间的关系D、数据的存储方法正确答案:【数据元素之间的关系】12、问题:数据结构在计算机内存中的表示是指______。选项:A、数据的存储结构B、数据结构C、数据的逻辑结构D、数据元素之间的关系正确答案:【数据的存储结构】13、问题:在数据的存储中,一个节点通常存储一个______。选项:A、数据结构B、数据类型C、数据元素D、数据项正确答案:【数据元素】14、问题:在决定选取任何类型的存储结构时,一般不多考虑______。选项:A、各节点的值如何B、节点个数的多少C、对数据有哪些运算D、所用编程语言实现这种结构是否方便正确答案:【各节点的值如何】15、问题:数据在计算机的存储器中表示时,逻辑上相邻的两个元素对应的物理地址也是相邻的,这种存储结构称之为______。选项:A、路基结构B、顺序存储结构C、链式存储结构D、以上都对正确答案:【顺序存储结构】16、问题:数据采用链式存储结构时,要求______。选项:A、每个节点占用一片连续的存储区域B、所有节点占用一片连续的存储区域C、节点的最后一个数据域是指针类型D、每个节点有多少个后继就设多少个指针域正确答案:【每个节点占用一片连续的存储区域】17、问题:数据的运算______。选项:A、是根据存储结构来定义的效率B、与采用何种存储结构有关C、有算术运算和关系运算两大类D、必须用程序设计语言来描述正确答案:【与采用何种存储结构有关】18、问题:_______不是算法的基本特性。选项:A、可行性B、指令序列长度有限C、在规定的时间内完成D、确定性正确答案:【在规定的时间内完成】19、问题:计算机中算法指的是解决某一问题的有限运算序列,它必须具备输入、输出、_______。选项:A、可行性、可移植性和可扩充性B、可行性、有穷性和确定性C、确定性、有穷性和稳定性D、易读性、稳定性和确定性正确答案:【可行性、有穷性和确定性】20、问题:一个算法具有________等设计目标。选项:A、可行性B、至少有一个输入C、确定性D、健壮性正确答案:【健壮性】21、问题:以下关于算法的说法正确的是____________。选项:A、算法最终必须由计算机程序实现B、算法等同于程序C、算法的可行性是指指令不能有二义性D、其他几个都是错误的正确答案:【其他几个都是错误的】22、问题:算法的时间复杂度与_______有关。选项:A、问题规模B、计算机硬件性能C、编译程序质量D、程序设计语言正确答案:【问题规模】23、问题:算法分析的主要任务之一是分析_______。选项:A、算法是否具有较好地可读性B、算法中是否存在语法错误C、算法的功能是否符合设计要求D、算法的执行时间和问题规模之间的关系正确答案:【算法的执行时间和问题规模之间的关系】24、问题:算法的时间复杂度为O(n2),表明该算法的_______。选项:A、问题规模是B、执行时间等于C、执行时间与成正比D、问题规模与成正比正确答案:【执行时间与成正比】25、问题:算法分析的目的是_______。选项:A、找出数据结构的合理性B、研究算法中输入和输出的关系C、分析算法的效率以求改进D、分析算法的易读性和文档性正确答案:【分析算法的效率以求改进】26、问题:以下函数中时间复杂度最小的是_______。选项:A、T1(n)=nlog2n+5000nB、T2(n)=-8000nC、T3(n)=-6000nD、T4(n)=20000log2n正确答案:【T4(n)=20000log2n】27、问题:以下函数中时间复杂度最小的是_______。选项:A、T1(n)=1000log2nB、T2(n)=-1000log2nC、T3(n)=-1000log2nD、T4(n)=2nlog2n-1000log2n正确答案:【T1(n)=1000log2n】28、问题:以下说法中错误的是_______。(1)原地工作算法的含义是指不需要任何额外的辅助空间(2)在相同的问题规模下n下,时间复杂度为O(nlog2n)的算法在执行时间上总是优于时间复杂度为O()的算法(3)时间复杂度通常是指最坏情况下,估计算法执行时间的一个上限(4)一个算法的时间复杂度与实现算法的语言无关选项:A、(1)B、(1)、(2)C、(1)、(4)D、(3)正确答案:【(1)、(2)】29、问题:以下数据结构中哪一个是非线性结构?选项:A、队列B、栈C、线性表D、二叉树正确答案:【二叉树】30、问题:下面程序的时间复杂为_______。for(i=1,s=0;i=n;i++){t=1;for(j=1;j=i;j++)t=t*j;s=s+t;}选项:A、O(n)B、O()C、O()D、O()正确答案:【O()】31、问题:一个算法的时间复杂度为(+log2n+14n)/,其数量级表示为_______。选项:A、O(n)B、O()C、O()D、O()正确答案:【O(n)】32、问题:取算法的时间复杂度为O(),当n=5时执行时间为50s,当n=15时,执行时间为_______。选项:A、3375B、1350C、2025D、675正确答案:【1350】33、问题:下面程序的时间复杂度为_______。voidfun(intn){inti=1;while(i=n)i=i*2}选项:A、O(n)B、O()C、O(log2n)D、O(nlog2n)正确答案:【O(log2n)】34、问题:下面程序的时间复杂度为_______。voidfun(intn){inti=1;while(i=n)i=i*3}选项:A、O(n)B、O()C、O(nlog3n)D、O(log3n)正确答案:【O(log3n)】35、问题:下面程序的时间复杂度为_______。voidfun(intn){inti=1,k=100;while(i=n){k++;i+=2;}}选项:A、O(n)B、O()C、O(log2n)D、O(nlog2n)正确答案:【O(n)】36、问题:数据元素是数据的最小单位。选项:A、正确B、错误正确答案:【错误】37、问题:数据对象就是一组任意数据元素的集合。选项:A、正确B、错误正确答案:【错误】38、问题:任何数据结构都具备3个基本运算:插入、删除、和查找。选项:A、正确B、错误正确答案:【错误】39、问题:数据的逻辑结构与数据元素在计算机中如何存储有关。选项:A、正确B、错误正确答案:【错误】40、问题:如果数据元素值发生改变,则数据的逻辑结构也随之改变。选项:A、正确B、错误正确答案:【错误】41、问题:逻辑结构相同的数据,可以采用多种不同的存储方法。选项:A、正确B、错误正确答案:【正确】42、问题:逻辑结构不相同的数据,必须采用多种不同的存储方法。选项:A、正确B、错误正确答案:【错误】43、问题:逻辑结构相同的数据,在设计存储结构时,它们的节点类型也一定相同。选项:A、正确B、错误正确答案:【错误】44、问题:数据的逻辑结构时指数据的各数据项之间的逻辑关系。选项:A、正确B、错误正确答案:【错误】45、问题:算法的优劣与算法描述语言无关,但与所用的计算机有关。选项:A、正确B、错误正确答案:【错误】46、问题:算法可以用不同的语言描述,如果用C或PASCAL语言等高级语言来描述,则算法实际上就是程序了。选项:A、正确B、错误正确答案:【错误】47、问题:程序一定是算法。选项:A、正确B、错误正确答案:【错误】48、问题:算法最终必须由计算机程序实现.选项:A、正确B、错误正确答案:【错误】49、问题:算法的可行性是指指令不能有二义性。选项:A、正确B、错误正确答案:【错误】50、问题:健壮的算法不会因非法输入数据而出现莫名其妙的状态。选项:A、正确B、错误正确答案:【正确】第二章线性表单元测试1、问题:线性表是具有n个______的有限序列。选项:A、表元素B、字符C、数据元素D、数据项正确答案:【数据元素】2、问题:线性表是_______。选项:A、一个有限序列,可以为空B、一个有限序列不可以为空C、一个无限序列,可以为空D、一个无限序列,不可以为空正确答案:【一个有限序列,可以为空】3、问题:关于线性表的正确说法是_______。选项:A、每个元素都有一个前驱和一个后继元素B、线性表中至少有一个元素C、表中元素的排序顺序必须是由小到大或由大到小D、除第一个元素和最后一个元素外,其余元素有且仅有一个前驱和一个后继元素正确答案:【除第一个元素和最后一个元素外,其余元素有且仅有一个前驱和一个后继元素】4、问题:线性表采用链表存储时,其存放各个元素的单元地址是_______。选项:A、必须是连续的B、一定是不连续的C、部分地址必须是连续的D、连续与否均可以正确答案:【连续与否均可以】5、问题:链表不具备的特点是_______。选项:A、可随机访问任一节点B、插入删除不需要移动元素C、不必事先估计存储空间D、所需空间与其长度成正比正确答案:【可随机访问任一节点】6、问题:线性表的静态链表存储结构与顺序存储结构相比,优点是_______。选项:A、所有的操作算法实现简单B、便于随机存取C、便于插入和删除D、便于利用零散的存储器空间正确答案:【便于插入和删除】7、问题:线性表的顺序存储结构和链式存储结构相比,优点是_______。选项:A、所有的操作算法实现简单B、便于随机存取C、便于插入和删除D、节省存储空间正确答案:【便于随机存取】8、问题:设线性表有n个元素,以下操作中,_______在顺序表上实现比在链表上实现效率高。选项:A、输入第i(1=i=n)个元素值B、交换第1个元素第2个元素的值C、顺序输出这n个元素的值D、输出与给定值x相等的元素在线性表中的符号正确答案:【输入第i(1=i=n)个元素值】9、问题:对于一个线性表,既要求能够较快地进行插入和删除操作,又要求存储结构能够反映数据元素之间的逻辑关系,则应采用_______存储结构。选项:A、顺序B、链式C、散列D、索引正确答案:【链式】10、问题:设线性表中有n个元素,以下操作,_______在单链表上实现要比在顺序表上实现效率高。选项:A、删除指定位置元素的后一个元素B、在第n个元素的后面插入一个新元素C、顺序输出前k个元素D、交换第i个元素和第n-i+1个元素的值正确答案:【删除指定位置元素的后一个元素】11、问题:以下属于顺序表的优点是_______。选项:A、插入元素方便B、删除元素方便C、存储密度大D、以上都不对正确答案:【存储密度大】12、问题:要求线性表采用静态空间分配方式,且插入和删除操作时不需要移动元素,采用的存储结构是_______。选项:A、单链表B、静态链表C、双链表D、顺序表正确答案:【静态链表】13、问题:如果最常用的操作时取第i个元素及前驱元素,则采用_______存储方式最节省时间。选项:A、单链表B、双链表C、循环单链表D、顺序表正确答案:【顺序表】14、问题:与单链表相比,双链表的优点之一是_______。选项:A、插入、删除操作更简单B、可以进行随机访问C、可以省略表头指针或表尾指针D、访问前后相邻节点更方便正确答案:【访问前后相邻节点更方便】15、问题:在长度为n的顺序表中插入一个元素的时间复杂度为_______。选项:A、O(n)B、O()C、O(log2n)D、O(1)正确答案:【O(n)】16、问题:在长度为n的顺序表中删除一个元素的时间复杂度为_______。选项:A、O(1)B、O()C、O(log2n)D、O(n)正确答案:【O(n)】17、问题:在两个各有n个元素的递增有序顺序表归并成一个有序顺序表,其最少的比较次数为_______。选项:A、nB、2n-1C、2nD、n-1正确答案:【n】18、问题:将两个长度为n、m的递增有序表归并成一个有序顺序表,其最少的比较次数是_______。(MIN表示取最小值)选项:A、nB、mC、MIN(m,n)D、不确定正确答案:【MIN(m,n)】19、问题:在带头节点的单链表L为空的判定条件是_______。选项:A、L==NULLB、L-NEXT==NULLC、L-NEXT==LD、L!=NULL正确答案:【L-NEXT==NULL】20、问题:对于一个具有n个元素的线性表,建立其单链表的时间复杂度为_______。选项:A、O(log2n)B、O(1)C、O(n)D、O()正确答案:【O(n)】21、问题:在单链表中查找指定值的节点的时间复杂度是_______。选项:A、O(log2n)B、O(1)C、O()D、O(n)正确答案:【O(n)】22、问题:以下关于单链表的叙述中,不正确的是_______。选项:A、节点除自身信息外还包括指针域,因此存储密度小于顺序存储结构B、逻辑上相邻的元素物理上不必相邻C、可以通过头节点直接计算第i个节点的存储地址D、插入、删除运算操作简单,不必移动节点正确答案:【可以通过头节点直接计算第i个节点的存储地址】23、问题:在单链表中,增加一个头节点的目的是为了_______。选项:A、使单链表至少有一个节点B、标识链表中重要节点的位置C、方便运算的实现D、说明单链表是线性表的链式存储结构正确答案:【方便运算的实现】24、问题:在一个具有n个节点的有序单链表中插入一个新节点并仍然保持有序的时间复杂度是_______。选项:A、O(nlog2n)B、O(1)C、O(n)D、O()正确答案:【O(n)】25、问题:将长度为m的单链表链接在长度为n的单链表之后的算法时间复杂度为_______。选项:A、O(1)B、O(n)C、O(m)D、O(m+n)正确答案:【O(n)】26、问题:已知一个长度为n的单链表中所有节点是递增有序的,以下叙述中正确的是_______。选项:A、插入一个节点使之有序的算法的时间复杂度为O(1)B、删除最大值节点使之有序的算法的时间复杂度为O(1)C、找最小值节点的算法的时间复杂度为O(1)D、以上都不对正确答案:【找最小值节点的算法的时间复杂度为O(1)】27、问题:在一个长度为n(n1)的带头节点的单链表上,另设有尾指针r(指向尾节点),执行_______操作与链表的长度有关。选项:A、删除单链表中的第一个元素B、删除单链表的尾节点C、在单链表中第一个元素前插入一个新节点D、在单链表最后一个元素后插入一个新节点正确答案:【删除单链表的尾节点】28、问题:在一个双链表中,在*p节点之后插入节点*q的操作是_______。选项:A、q-prior=p;p-next=q;p-next-prior=q;q-next=p-next;B、q-next=p-next;p-next-prior=q;p-next=q;q-prior=p;C、p-next=q;q-prior=p;q-next=p-next;p-next-prior=q;D、p-next-prior=q;q-prior=p;p-next=q;q-next=p-next;正确答案:【q-next=p-next;p-next-prior=q;p-next=q;q-prior=p;】29、问题:在一个双链表中,在*p节点之前插入节点*q的操作是_______。选项:A、p-prior=q;q-next=p;p-prior-next=q;q-prior=p-prior;B、q-prior=p-prior;p-prior-next=q;q-next=p;p-prior=q-next;C、q-next=p;p-next=q;q-prior-next=q;q-next=p;D、p-prior-next=q;q-next=p;q-prior=p-prior;p-prior=q;正确答案:【p-prior-next=q;q-next=p;q-prior=p-prior;p-prior=q;】30、问题:在一个双链表中,删除*p节点的操作是_______。选项:A、p-prior–next=p-next;p-next-prior=p-prior;B、p-prior=p-prior-prior;p-prior-prior=p;C、p-next-prior=p;p-next=p-next-next;D、p-next=p-prior-prior;p-prior=p-prior-prior;正确答案:【p-prior–next=p-next;p-next-prior=p-prior;】31、问题:在一个双链表中,删除*p节点之后的一个节点,其时间复杂度为_______。选项:A、O(nlog2n)B、O(1)C、O(n)D、O()正确答案:【O(1)】32、问题:非空的循环单链表L的尾节点(由p所指向)满足_______。选项:A、p-next==NULLB、p==NULLC、p-next==LD、p==L正确答案:【p-next==L】33、问题:带表头结点的双循环链表L为空表的条件是_______。选项:A、L==NULLB、L-next-prior==NULLC、L-prior==NULLD、L-next==L正确答案:【L-next==L】34、问题:某线性表最常用的操作是在尾元素之后插入一个元素和删除尾元素,则采用_______存储方式最节省运算时间。选项:A、单链表B、循环单链表C、双链表D、循环双链表正确答案:【循环双链表】35、问题:如果对含有n(n1)个元素的线性表的运算只有4种,即删除第一个元素、删除尾元素、在第一个元素前面插入新元素、在尾元素的后面插入新元素,则最好使用_______。选项:A、只有尾节点指针没有头节点的循环单链表B、只有尾节点指针没有头节点的非循环双链表C、只有开始数据节点指针没有尾节点指针的循环双链表D、既有表头指针也有表尾指针的循环单链表正确答案:【只有开始数据节点指针没有尾节点指针的循环双链表】36、问题:在某线性表最常用的操作是在尾元素之后插入一个元素和删除第一个元素。故采用_______存储方式最节省时间。选项:A、单链表B、仅有头节点指针的循环单链表C、双链表D、仅有尾指针的循环单链表正确答案:【仅有尾指针的循环单链表】37、问题:两个表长都为n、不带表头结点的单链表,结点类型都相同,头指针分别为h1与h2,且前者是循环链表,后者是非循环链表,则_______。选项:A、对于两个链表来说,删除首节点的操作,其时间复杂度都是O(1)B、对于两个链表来说,删除尾节点的操作,其时间复杂度都是O(n)C、循环链表要比非循环链表占用更多的内存空间D、h1和h2是不同类型的变量正确答案:【对于两个链表来说,删除尾节点的操作,其时间复杂度都是O(n)】38、问题:在长度为n的_______上,删除第一个元素,其算法的时间复杂度为O(n)。选项:A、只有表头指针的不带表头节点的循环单链表B、只有表尾指针的不带表头节点的循环单链表C、只有表尾指针的带表头节点的循环单链表D、只有表头指针的带表头节点的循环单链表正确答案:【只有表头指针的不带表头节点的循环单链表】39、问题:下面关于线性表的叙述错误的是_______。选项:A、线性表采用顺序存储必须占用一片连续的存储空间B、线性表采用链式存储不必占用一片连续的存储空间C、线性表采用链式存储便于插入和删除操作的实现D、线性表采用顺序存储便于插入和删除操作的实现正确答案:【线性表采用顺序存储便于插入和删除操作的实现】40、问题:对于双链表,在两个节点之间插入一个新节点是,需要修改_______个指针域。选项:A、1B、2C、3D、4正确答案:【4】41、问题:在单链表中,要删除某一指定的节点,必须找到该节点的_______节点。选项:A、后继B、头节点C、前驱D、尾节点正确答案:【前驱】42、问题:求一个单链表长度的算法的时间复杂度为_______。选项:A、O(log2n)B、O(n)C、O(1)D、O()正确答案:【O(n)】43、问题:线性表中每个元素都有一个前驱元素和一个后继元素。选项:A、正确B、错误正确答案:【错误】44、问题:线性表中所有元素的排列顺序必须从小到大或从大到小。选项:A、正确B、错误正确答案:【错误】45、问题:静态链表既有顺序存储结构的优点,又有动态链表的优点,所以,利用它存取第i个元素的时间与元素个数n无关。选项:A、正确B、错误正确答案:【错误】46、问题:静态链表与动态链表在元素的插入、删除方面类似,不需要做元素的移动。选项:A、正确B、错误正确答案:【正确】47、问题:线性表的顺序存储结构优于链式存储结构。选项:A、正确B、错误正确答案:【错误】48、问题:在循环单链表中,从表中任一节点出发都可以通过前后移动操作遍历整个循环链表。选项:A、正确B、错误正确答案:【错误】49、问题:在单链表中,可以从头节点开始查找任何一个节点。选项:A、正确B、错误正确答案:【正确】50、问题:在双链表中,可以从任一节点开始沿着同一方向查找到任何其他节点。选项:A、正确B、错误正确答案:【错误】第三章栈和队列单元测试1、问题:元素A、B、C、D依次进栈后,栈顶元素是_______。选项:A、AB、BC、CD、D正确答案:【D】2、问题:经过以下运算后,x的值是_______。InitStack(s);Push(s,a);Push(s,b);Pop(s,x);GetTop(s,x)选项:A、aB、bC、1D、0正确答案:【a】3、问题:经过以下栈运算后,StackEmpty(s)的值是_______。InitStack(s);Push(s,a);Push(s,b);Pop(s,x);Pop(s,y)选项:A、aB、bC、1D、0正确答案:【1】4、问题:已知一个栈的进栈序列是ABC,出栈序列为CBA,经过栈的操作是_______。选项:A、push,pop,push,pop,push,popB、push,push,push,pop,pop,popC、push,push,pop,pop,push,popD、push,pop,push,push,pop,pop正确答案:【push,push,push,pop,pop,pop】5、问题:若元素a、b、c、d、e、f依次进栈,允许进栈、退栈的操作交替进行,但不允许连续3次退栈工作,则不可能得到的出栈序列是_______。选项:A、dcebfaB、cbdaefC、bcaefdD、afedcb正确答案:【afedcb】6、问题:设一个栈的输入序列为A、B、C、D,则借助一个栈所得的输出序列不可能是_______。选项:A、ABCDB、DCBAC、ACDBD、DABC正确答案:【DABC】7、问题:一个栈的进栈序列是abcde,则栈的不可能的输出序列是_______。选项:A、edcbaB、decbaC、dceabD、abcde正确答案:【dceab】8、问题:已知一个栈的进栈序列是1,2,3,…n,其输出序列的第一个元素是i(1≤i≤n),则第j(1≤j≤n)个出栈元素是_______。选项:A、iB、n-iC、j-i+1D、不确定正确答案:【不确定】9、问题:已知一个栈的进栈序列是1,2,3,…n,其输出序列是p1,p2,…pn,若p1=n,则pi的值是_______。选项:A、iB、n-iC、n-i+1D、不确定正确答案:【n-i+1】10、问题:设n个元素的进栈序列是p1,p2,…pn,其输出序列是1,2,3,…n,若pn=1,则pi(1≤i≤n-1)的值是_______。选项:A、n-i+1B、n-iC、iD、不确定正确答案:【n-i+1】11、问题:设n个元素的进栈序列是1,2,3,…n,其输出序列是p1,p2,…pn,若p1=3,则p2的值是_______。选项:A、一定是2B、一定是1C、不可能是1D、以上都不对正确答案:【不可能是1】12、问题:设n个元素的进栈序列是p1,p2,…pn,其输出序列是1,2,3,…n,若p3=1,则p1的值是_______。选项:A、可能是2B、一定是2C、不可能是2D、不可能是3正确答案:【不可能是2】13、问题:设n个元素的进栈序列是p1,p2,…pn,其输出序列是1,2,3,…n,若p3=3,则p1的值是_______。选项:A、可能是2B、一定是2C、不可能是1D、一定是1正确答案:【可能是2】14、问题:设有5个元素的进栈序列是a,b,c,d,e,其输出序列是c,e,d,b,a,则该栈的容量至少是_______。选项:A、1B、2C、3D、4正确答案:【4】15、问题:在数据处理过程中常需要保存一些中间数据,如果后保存的数据先处理,则使用_______来保存这些数据。选项:A、线性表B、栈C、队列D、单链表正确答案:【栈】16、问题:判定一个顺序栈st为(元素个数最多为MaxSize)空的条件为_______。选项:A、st.top==-1B、st.top!=-1C、st.top!=MaxSizeD、st.top==MaxSize正确答案:【st.top==-1】17、问题:判定一个顺序栈st为(元素个数最多为MaxSize)为栈满的条件为_______。选项:A、st.top!==-1B、st.top=-1C、st.top!=MaxSize-1D、st.top==MaxSize-1正确答案:【st.top==MaxSize-1】18、问题:表达式a*(b+c)-d的后缀表达式是_______。选项:A、abcd*+-B、abc+*d-C、abc*+d-D、-+*abcd正确答案:【abc+*d-】19、问题:若一个栈用数组data[1..n]存储,初始栈顶指针top为n+1,则以下元素x进入栈的正确操作是_______。选项:A、top++;data[top]=x;B、data[top]=x;top++;C、top--;data[top]=x;D、data[top]=x;top--;正确答案:【top--;data[top]=x;】20、问题:若一个栈用数组data[1..n]存储,初始栈顶指针top为n,则以下元素x进入栈的正确操作是_______。选项:A、top++;data[top]=x;B、data[top]=x;top++;C、top--;data[top]=x;D、data[top]=x;top--;正确答案:【data[top]=x;top--;】21、问题:若一个栈用数组data[1..n]存储,初始栈顶指针top为0,则以下元素x进入栈的正确操作是_______。选项:A、top++;data[top]=x;B、data[top]=x;top++;C、top--;data[top]=x;D、data[top]=x;top--;正确答案:【top++;data[top]=x;】22、问题:若一个栈用数组data[1..n]存储,初始栈顶指针top为1,则以下元素x进入栈的正确操作是_______。选项:A、top++;data[top]=x;B、data[top]=x;top++;C、top--;data[top]=x;D、data[top]=x;top--;正确答案:【data[top]=x;top++;】23、问题:链栈与顺序栈相比有一个明显的优点,即_______。选项:A、插入操作更方便B、通常不会出现栈满的情况C、总是不会出现栈空的情况D、删除操作更加方便正确答案:【通常不会出现栈满的情况】24、问题:以下各链表均不带有头节点,其中最不合适用作链栈的链表是_______。选项:A、只有表头指针没有表尾指针的循环双链表B、只有表尾指针没有表头指针的循环双链表C、只有表尾指针没有表头指针的循环单链表D、只有表头指针没有表尾指针的循环单链表正确答案:【只有表头指针没有表尾指针的循环单链表】25、问题:如果以链表作为栈的存储结构,则退栈操作时_______。选项:A、必须判断链栈是否为满B、判断链栈元素的类型C、必须判断链栈是否空D、对链栈不做任何判断正确答案:【必须判断链栈是否空】26、问题:向一个不带头节点的栈顶指针为lst的链栈中插入一个s所指向节点时,则执行_______。选项:A、lst-next=s;B、s-next=lst-next;lst-next=s;C、s-next=lst;lst=s;D、s-next=lst;lst-next=s;正确答案:【s-next=lst;lst=s;】27、问题:从一个不带头节点的栈顶指针为lst的栈链中删除一个节点时,用x保存被删节点的值,则执行_______。选项:A、x=lst;lst=lst-next;B、x=lst-dataC、lst=lst-next;x=lst-data;D、x=lst-data;lst=lst-next;正确答案:【x=lst-data;lst=lst-next;】28、问题:栈和队列的不同点是_______。选项:A、都是线性表B、都不是线性表C、栈只能在一端进行插入删除操作,而队列在不同端进行插入删除操作D、没有不同点正确答案:【栈只能在一端进行插入删除操作,而队列在不同端进行插入删除操作】29、问题:经过下列运算后,队头的元素是_______。InitQueue(qu);Enqueue(qu,‘a’);EnQueue(qu,‘b’);EnQueue(qu,‘c’);DeQueue(qu);选项:A、aB、bC、1D、0正确答案:【b】30、问题:若某循环队列有队首指针front和队尾指针rear,在队不满时进队操作仅会改变_______。选项:A、frontB、rearC、front和rearD、以上都不对正确答案:【rear】31、问题:循环队列qu的队满条件(front队首指针指向队首元素的前一位置,rear队尾指针指向队尾元素)是_______。选项:A、(qu.rear+1)%maxsize==(qu.front+1)%maxsizeB、(qu.rear+1)%maxsize==qu.front+1C、(qu.rear+1)%maxsize==qu.frontD、qu.rear==qu.front正确答案:【(qu.rear+1)%maxsize==qu.front】32、问题:设循环队列中数组的下标是0~N-1,其队头、队尾指针分别为f和r(f指向队首元素的前一位置,r指向队尾元素),则元素个数为_______。选项:A、r-fB、r-f-1C、(r-f)%N+1D、(r-f+N)%N正确答案:【(r-f+N)%N】33、问题:最适合用做链队列的不带表头节点的链表是_______。选项:A、带首节点指针和尾节点指针的循环单链表B、只带尾节点指针的非循环单链表C、只带首节点指针的非循环单链表D、只带尾节点指针的循环单链表正确答案:【只带尾节点指针的循环单链表】34、问题:假设用一个不带表头节点的单链表表示队列,在进行删除操作时,_______。选项:A、仅修改头指针B、仅修改尾指针C、头、尾指针都要修改D、头、尾指针可能都要修改正确答案:【头、尾指针可能都要修改】35、问题:假设用一个不带头节点的单链表表示队列,队头和队尾指针分别为front和rear,则判断队空的条件是_______。选项:A、front==rearB、front!==NULLC、rear!==NULLD、front==NULL正确答案:【front==NULL】36、问题:最不合适用做链队的不带头节点的链表是_______。选项:A、只带队首节点指针的非循环单链表B、只带队首节点指针的循环双链表C、只带队尾节点指针的循环双链表D、以上都不合适正确答案:【只带队首节点指针的非循环单链表】37、问题:假设用qu[0..M]实现循环队列,f、r分别为队首元素的前一个位置和队尾位置。若用“(r+1)%(M+1)==f”作为队满的标志,则_______。选项:A、可用“f==r”作为队空的标志B、可用“fr”作为队空的标志C、可用“(f+1)%(M+1)==r”作为队空的标志D、队列中最多可以有M+1个元素正确答案:【可用“f==r”作为队空的标志】38、问题:若用一个大小为6的数组来实现循环队列,且当前rear和front的值分别是0和3,当从队列中删除一个元素,再加入两个元素后,rear和front的值分别是_______。选项:A、1和5B、2和4C、4和2D、5和1正确答案:【2和4】39、问题:栈底元素是不能删除的元素。选项:A、正确B、错误正确答案:【错误】40、问题:顺序栈中元素值的大小是有序的。选项:A、正确B、错误正确答案:【错误】41、问题:n个元素依次进栈,它们的出栈顺序和进栈顺序一定正好相反。选项:A、正确B、错误正确答案:【错误】42、问题:栈顶元素和栈底有可能是同一元素。选项:A、正确B、错误正确答案:【正确】43、问题:若用s[0..m-1]表示顺序栈的存储空间,则对栈的进栈、出栈操作最多只能进行m次;选项:A、正确B、错误正确答案:【错误】44、问题:栈是一种对进栈、出栈操作总次数做了限制的线性表。选项:A、正确B、错误正确答案:【错误】45、问题:栈是一种对进栈、出栈操作的次序做了限制的线性表。选项:A、正确B、错误正确答案:【错误】46、问题:对顺序栈进行进栈、出栈操作,不涉及元素的前、后移动问题。选项:A、正确B、错误正确答案:【正确】47、问题:空栈没有栈顶指针。选项:A、正确B、错误正确答案:【错误】48、问题:栈和队列都是限制存取端的。选项:A、正确B、错误正确答案:【正确】49、问题:队列是一种对进队、出队操作的次序做了限制的线性表。选项:A、正确B、错误正确答案:【错误】50、问题:若用“队首指针的值和队尾指针的值相等”作为循环顺序队为空的标识,则在设置一个空队列时,只需给队首指针和队尾指针赋同一个值,在顺序表地址范围内不管什么值都可以。选项:A、正确B、错误正确答案:【正确】第五章数组与广义表单元测试1、问题:以行序优先顺序存储数组A[5][5];假定A[0][0]的地址为1000,每个元素占4个字节,下标变量A[4][3]的地址是____。选项:A、1023B、1046C、1069D、1092正确答案:【1092】2、问题:数组a[1..6][1..5](无0行0列)以列序优先顺序存储,第一个元素a[1][1]的地址为1000,每个元素占2个存储单元,则a[3][4]的地址是____。选项:A、1026B、1038C、1040D、1046正确答案:【1040】3、问题:设有一个5行4列的矩阵A,采用行序优先存储方式,A[0][0]为第一个元素,其存储地址为1000,A[2][2]的地址为1040,则A[3][0]的地址为_________。选项:A、1024B、1048C、1060D、1096正确答案:【1048】4、问题:设有一个10行10列的矩阵A,采用行序优先存储方式,存储全部数据需要400个字节的空间。如果A[0][0]为第一个元素,其存储地址为1000,则A[3][6]的地址为_________。选项:A、1014B、1144C、1036D、1056正确答案:【1144】5、问题:设有一个10行10列的矩阵A,采用行序优先存储方式。如果A[0][0]为第一个元素,其存储地址为1000,A[2][3]的存储地址为1069,则存储一个元素需要的单元数是_________。选项:A、1B、2C、3D、4正确答案:【3】6、问题:不能够对数据元素进行随机访问的物理结构是_________。选项:A、数组的顺序存储B、对称矩阵的压缩存储C、三元组顺序表D、三对角矩阵的压缩存储正确答案:【三元组顺序表】7、问题:对特殊矩阵采用压缩存储的目的主要是_________。选项:A、表达变得简单B、对矩阵元素的存储变得简单C、去掉矩阵中的多余元素D、减少不必要的存储空间正确答案:【减少不必要的存储空间】8、问题:对n*n的对称矩阵进行压缩存储,需要保存的数据元素的个数是_________。选项:A、nB、C、n(n+1)D、n(n+1)/2正确答案:【n(n+1)/2】9、问题:设10*10的对称矩阵下三角保存SA[1..55]中,其中A[1][1]保存在SA[1]中,A[5][3]保存在SA[k]中,这里k等于_________。选项:A、12B、13C、14D、15正确答案:【13】10、问题:对n行n列的三对角矩阵,需要保存的数据元素的个数是_________。选项:A、3nB、C、3n-2D、n(n+1)正确答案:【3n-2】11、问题:设10*10三对角矩阵保存SA[1..28]中,其中A[1][1]保存在SA[1]中,A[5][5]保存在SA[k]中,这里k等于_________。选项:A、10B、11C、12D、13正确答案:【13】12、问题:某稀疏矩阵A采用三元组顺序表作为存储结构,对于矩阵元素的赋值运算Assign(A,e,i,j),不可能_________。(在Assign(A,e,i,j)中,e是矩阵元素Ai,j的值,i和j分别为矩阵元素的行号和列号)。选项:A、修改某个三元组的行号或列号B、插入一个新的三元组C、修改某个三元组的元素值D、删除一个三元组正确答案:【修改某个三元组的行号或列号】13、问题:对稀疏矩阵进行压缩存储方法一般有两种,分别为________。选项:A、三元组和对称矩阵B、对角矩阵和散列C、散列和十字链表D、三元组顺序表和十字链表正确答案:【三元组顺序表和十字链表】14、问题:下列叙述中,不正确的是__________。选项:A、数组是一种线性结构B、数组是一种定长的线性表C、除了插入与删除操作外,数组的基本操作还有存取、修改、检索和排序等D、数组的基本操作有存取、修改、检索和排序等,没有插入与删除操作正确答案:【除了插入与删除操作外,数组的基本操作还有存取、修改、检索和排序等】15、问题:某稀疏矩阵A采用十字链表作为存储结构,对于矩阵元素的赋值运算Assign(A,e,i,j),不可能_________。(在Assign(A,e,i,j)中,e是矩阵元素Ai,j的值,i和j分别为矩阵元素的行号和列号)选项:A、修改稀疏矩阵的行列数B、修改某个结点的值C、增加一个新结点D、删除一个结点正确答案:【修改稀疏矩阵的行列数】16、问题:使用三元组来保存稀疏矩阵中的非零元素,三元组不包括非零元素的__________。选项:A、个数B、行号C、列号D、元素值正确答案:【个数】17、问题:使用三元组顺序表或十字链表作为稀疏矩阵中的物理结构,对元素的访问形式只能是__________。选项:A、随机访问B、哈希访问C、顺序访问D、索引访问正确答案:【顺序访问】18、问题:使用三元组顺序表作为稀疏矩阵中的物理结构,要求对三元组按行序优先的顺序进行存放,原因是按行序优先能__________。选项:A、节省存储空间B、方便稀疏矩阵的运算C、提高元素的访问速度D、使元素的摆放形式漂亮一些正确答案:【方便稀疏矩阵的运算】19、问题:表头和表尾均为空义表的广义表是__________。选项:A、()B、((),())C、(())D、((()))正确答案:【(())】20、问题:广义表(a,(b,c),d)的表长是______。选项:A、3B、4C、5D、6正确答案:【3】21、问题:广义表((a,()),(b,(c)),(()))的深度是______。选项:A、3B、4C、5D、6正确答案:【3】22、问题:广义表((a,b),(c),(d))的表头是______。选项:A、a,bB、(a,b)C、aD、()正确答案:【(a,b)】23、问题:广义表((a,b),(c),(d))的表尾是______。选项:A、(d)B、dC、(a,b)D、((c),(d))正确答案:【((c),(d))】24、问题:对广义表G=((a,((),b)),(((),(c,d)),()))执行tail(head(head(tail(G))))操作的结果是_________。选项:A、()B、cC、(c,d)D、((c,d))正确答案:【((c,d))】25、问题:下列叙述中,不正确的是______。选项:A、对称矩阵只需要存放包括对角线元素在内的下(或上)三角元素即可B、对角矩阵只需要存放其值不一定为0的对角线上元素C、稀疏矩阵中值为0的元素较多,因此可以采用三元组方法存储非零元素D、稀疏矩阵中大量值为0的元素分布有规律,因此可以采用三元组表方法存储正确答案:【稀疏矩阵中大量值为0的元素分布有规律,因此可以采用三元组表方法存储】26、问题:在一维数组(向量)中,能很方便地通过增加数据元素使数组长度增加。选项:A、正确B、错误正确答案:【错误】27、问题:数组是一种复杂的数据结构,数据元素之间的关系既不是线性的,也不是树型的。选项:A、正确B、错误正确答案:【错误】28、问题:数组是一个定长的线性表,所以不能有元素的增加与删除操作。选项:A、正确B、错误正确答案:【正确】29、问题:数组的顺序存储结构中,按行序(或列序)优先次序存放数组元素,是为了方便寻址公式的分析。选项:A、正确B、错误正确答案:【正确】30、问题:通过数组的顺序存储结构,按行序优先次序保存了数组的全部数据元素,可以通过寻址公式对数组元素进行随机访问。选项:A、正确B、错误正确答案:【正确】31、问题:n维数组的存储方案中,每一个数组元素都有n个方向的关系(约束)。选项:A、正确B、错误正确答案:【正确】32、问题:对对称矩阵进行压缩存储,能提高存储效率,其压缩率可低至50%。(压缩率为压缩后的大小与压缩前的大小之比)选项:A、正确B、错误正确答案:【错误】33、问题:对特殊矩阵进行压缩存储后,无法实现对其元素进行随机访问。选项:A、正确B、错误正确答案:【错误】34、问题:在特殊矩阵中,有很多值相同的元素并且有规律地分布,所以没有必要重复存储值相同的元素。选项:A、正确B、错误正确答案:【正确】35、问题:元素A[i][j]在对称矩阵的下三角位置上的条件是ij。选项:A、正确B、错误正确答案:【错误】36、问题:元素A[i][j]在三对角矩阵的三对角位置上的条件是|i-j|≤1。选项:A、正确B、错误正确答案:【正确】37、问题:以三元组顺序表存储稀疏矩阵时,可以通过寻址公式对数据元素进行随机访问。选项:A、正确B、错误正确答案:【错误】38、问题:以三元组顺序表存储稀疏矩阵时,对元素A[i][j]赋值0,可能会在三元组顺序表中引起三元组(i,j,A[i][j])后面的三元组向前面移动。选项:A、正确B、错误正确答案:【正确】39、问题:以三元组顺序表存储稀疏矩阵时,对元素A[i][j]赋值一个非零值,只需要三元组顺序表的最后添加新的三元组(i,j,A[i][j])。选项:A、正确B、错误正确答案:【错误】40、问题:以十字链表存储稀疏矩阵时,只能对数据元素进行顺序访问。选项:A、正确B、错误正确答案:【正确】41、问题:以十字链表存储稀疏矩阵时,对元素A[i][j]赋值0,一定会在2个单链表中进行结点的删除操作。选项:A、正确B、错误正确答案:【错误】42、问题:以十字链表存储稀疏矩阵时,对元素A[i][j]赋值一个非零值,一定会在2个单链表中进行增加结点的操作。选项:A、正确B、错误正确答案:【错误】43、问题:当某稀疏矩阵经常进行元素的赋值运算时,十字链表比三元组表更适合作为其存储结构。选项:A、正确B、错误正确答案:【正确】44、问题:一个广义表的表头不一定是一个广义表。选项:A、正确B、错误正确答案:【正确】45、问题:一个非空广义表的表尾总是一个广义表。选项:A、正确B、错误正确答案:【正确】46、问题:广义表的长度是指广义表中括号嵌套的层数。选项:A、正确B、错误正确答案:【错误】47、问题:广义表(a,(b,(c,d,((),()))))的深度为5。选项:A、正确B、错误正确答案:【正确】48、问题:广义表(a,(b,(c,d,((),()))))的长度为6。选项:A、正确B、错误正确答案:【错误】49、问题:广义表中的元素既可以是原子,也可以是广义表。选项:A、正确B、错误正确答案:【正确】50、问题:通常广义表的物理结构是链式的。选项:A、正确B、错误正确答案:【正确】第六章树单元测试1、问题:树最适合用来表示。选项:A、有序数据元素B、无序数据元素C、元素之间具有分支层次关系的数据D、元素之间无联系的数据正确答案:【元素之间具有分支层次关系的数据】2、问题:在树结构中,若结点A有三个兄弟,且B是A的双亲,则B的度是。选项:A、3B、4C、5D、2正确答案:【4】3、问题:下列陈述中正确的是。选项:A、二叉树是度为2的有序树B、二叉树中结点只有一个孩子时无左右之分C、二叉树中必有度为2的结点D、二叉树中每个结点最多只有两棵子树,并且有左右之分正确答案:【二叉树中每个结点最多只有两棵子树,并且有左右之分】4、问题:设深度为h的二叉树中只有度为0和度为2的结点,则此类二叉树中所包含结点数至少为。选项:A、2hB、2h-1C、2h+1D、h+1正确答案:【2h-1】5、问题:设深度为h的二叉树中只有度为0和度为2的结点,则此类二叉树中所包含结点数至多为。选项:A、B、C、D、正确答案:【】6、问题:具有n(n0)个结点的完全二叉树的深度为。选项:A、élog2(n)ùB、?log2(n)?C、?log2(n)?+1D、élog2(n)+1ù正确答案:【?log2(n)?+1】7、问题:具有32个结点的完全二叉树有个叶子结点。选项:A、14B、15C、16D、17正确答案:【16】8、问题:一棵完全二叉树的第6层上有23个叶子结点,则此二叉树最多有结点。选项:A、78B、79C、80D、81正确答案:【81】9、问题:具有3个结点的二叉树有种。选项:A、3B、4C、5D、6正确答案:【5】10、问题:若一棵二叉树有9个度为2的结点,5个度为1的结点,则叶子结点的个数为。选项:A、9B、10C、15D、不确定正确答案:【10】11、问题:一棵二叉树有35个结点,则所有结点的度之和为。选项:A、35B、16C、33D、34正确答案:【34】12、问题:二叉树是非线性数据结构,所以。选项:A、它不能用顺序存储结构存储B、它不能用链式存储结构存储C、顺序存储结构和链式存储结构都能存储D、顺序结构和链式结构都不能使用正确答案:【顺序存储结构和链式存储结构都能存储】13、问题:用顺序存储的方法将n个结点的完全二叉树中所有结点按层逐个依从左至右的次序存放在一维数组R[1:n]中,若结点R[i]有左孩子,则左孩子是。选项:A、R[2i-1]B、R[2i]C、R[2i+1]D、R[2i+2]正确答案:【R[2i]】14、问题:一棵深度为k且只有k个结点的二叉树按照完全二叉树顺序存储的方式存放于一个一维数组R[n]中,则n至少是才能确保正确存储。选项:A、2kB、2k+1C、D、正确答案:【】15、问题:以下存储结构中,不是树的存储结构是。选项:A、双亲表示法B、孩子兄弟链表C、孩子链表存储结构D、广义表正确答案:【广义表】16、问题:用二叉链表表示具有n个结点的二叉树时,值为空的指针域的个数为。选项:A、n-1B、nC、n+lD、2n正确答案:【n+l】17、问题:二叉树的先序遍历序列和后序遍历序列正好相反,则该二叉树一定满足的条件是。选项:A、空或只有一个结点B、高度等于其结点数C、任一结点无左孩子D、任一结点无右孩子正确答案:【高度等于其结点数】18、问题:下列二叉树,其后序遍历序列与层次遍历序列相同的非空二叉树是。选项:A、满二叉树B、完全二叉树C、单支树D、只有根结点的二叉树正确答案:【只有根结点的二叉树】19、问题:对二叉树的结点从1开始连续编号,要求每个结点的编号大于其左右子女的编号,同一结点的左、右子女中,其左子女的编号小于其右子女的编号,则可采用遍历实现二叉树的这种结点编号。选项:A、先序B、中序C、后序D、层序正确答案:【后序】20、问题:在二叉树中有两个结点m和n,如果m是n的祖先,使用非递归过程更方便找到从m到n的路径。选项:A、先序遍历B、中序遍历C、后序遍历D、层次遍历正确答案:【后序遍历】21、问题:不使用栈实现二叉树后序遍历的非递归算法,最佳方案是二叉树的存储结构采用表示。选项:A、二叉链表B、广义表C、三叉链表D、顺序表正确答案:【三叉链表】22、问题:在一个非空二叉树的中序序列中,根结点的右边是。选项:A、只有右子树上的所有结点B、只有右子树上的部分结点C、只有左子树上的部分结点D、只有左子树上的所有结点正确答案:【只有右子树上的所有结点】23、问题:设某棵二叉树的中序遍历序列为ABCD,先序遍历序列为CABD,则后序遍历该二叉树得到序列为。选项:A、BADCB、BCDAC、CDABD、CBDA正确答案:【BADC】24、问题:先序遍历序列为ABC,后序遍历序列为CBA的二叉树共有棵。选项:A、1B、2C、3D、4正确答案:【4】25、问题:若二叉树采用二叉链表存储结构,要交换所有分支结点的左右子树的位置,利用基于遍历的递归算法最合适。选项:A、逆中序B、中序C、后序D、层次正确答案:【后序】26、问题:一棵二叉树的先序遍历序列为EFHIGJK,中序遍历序列为HFIEJKG,则该二叉树根结点的右孩子为。选项:A、EB、FC、GD、H正确答案:【G】27、问题:一棵二叉树采用二叉链表存储结构存储,根指针为t,下列递归算法求其先序序列中第k(1≦k≦二叉树中结点的个数)个结点的值,算法的画线处应填的语句是。选项:A、k--B、n++C、t=t-lchildD、t=t-rchild正确答案:【n++】28、问题:二叉树采用二叉链表存储结构存储,根指针为t,下列递归算法求其叶子结点的个数,算法的画线处应填的语句是。选项:A、t-lchild==NULLB、t-lchild==NULLt-rchild!=NULLC、t-rchild==NULLD、t-lchild==NULLt-rchild==NULL正确答案:【t-lchild==NULLt-rchild==NULL】29、问题:判断线索二叉链表中*p结点有右孩子结点的条件是。选项:A、p!=NULLB、p-rchild!=NULLC、p-rtag==0D、p-rtag==1正确答案:【p-rtag==0】30、问题:将下图所示的二叉树按中序线索化,结点c的左指针与结点h的右指针分别指向。选项:A、a,cB、g,cC、h,gD、a,g正确答案:【a,g】31、问题:二叉树线索化后,仍不能有效求解的问题是。选项:A、先序线索二叉树中求先序后继B、中序线索二叉树中求中序后继C、中序线索二叉树中求中序前驱D、后序线索二叉树中求后序后继正确答案:【后序线索二叉树中求后序后继】32、问题:基于中序线索化链表,其头结点指针为head,对应的二叉树为空的判断条件是。选项:A、head==NULLB、head-lchild==headhead-rchild==headC、head-ltag==0D、head-rtag==1正确答案:【head-lchild==headhead-rchild==head】33、问题:讨论树、森林和二叉树的关系,目的是________。选项:A、将树、森林按二叉树的存储结构进行存储,并利用二叉树的算法解决树与森林的有关问题B、将树、森林转化成二叉树,统一逻辑表示形式C、只是为了方便定义树、森林的遍历方法D、体现一种技巧,没有什么实际意义正确答案:【将树、森林按二叉树的存储结构进行存储,并利用二叉树的算法解决树与森林的有关问题】34、问题:设森林F有3棵树,分别有9、8和7个结点,则F此排列次序转换成二叉树后根结点的右子树上结点的个数是。选项:A、16B、15C、7D、17正确答案:【15】35、问题:如果二叉树T2是由一棵树T1转换而来的二叉树,那么T1结点的先根遍历序列对应T2的序列。选项:A、先序遍历B、中序遍历C、后序遍历D、层次遍历正确答案:【先序遍历】36、问题:给定一棵树的二叉链表存储结构,把这棵树转换为二叉树后,这棵二叉树的形态是。选项:A、唯一的B、有多种C、有多种,但根结点都没有左孩子D、有多种,但根结点都没有右孩子正确答案:【唯一的】37、问题:由树转换成的二叉树里,一个结点N的左孩子是N在原树里对应结点的。选项:A、最左孩子结点B、最右孩子结点C、最邻近的右兄弟D、最邻近的左兄弟正确答案:【最左孩子结点】38、问题:用13个权值构造哈夫曼树,则该哈夫曼树共有个结点。选项:A、13B、12C、26D、25正确答案:【25】39、问题:对n(n≧2)个权值不同的字符依哈夫曼算法构造哈夫曼树,下面关于该哈夫曼树的叙述中错误的是。选项:A、树中一定没有度为1的结点B、该树一定是一棵完全二叉树C、树中两个权值最小的结点一定是兄弟结点D、树中任何一个非叶结点的权值一定不小于下一层任意一个结点的权值正确答案:【该树一定是一棵完全二叉树】40、问题:设一组权值集合W=(2,4,5,7),要求根据这些权值集合构造一棵哈夫曼树,则这棵哈夫曼树的带权路径长度为。选项:A、36B、46C、35D、34正确答案:【35】41、问题:树中元素结点是多对多的关系。选项:A、正确B、错误正确答案:【错误】42、问题:树与二叉树是两种不同的树形结构。选项:A、正确B、错误正确答案:【正确】43、问题:一棵满二叉树中每棵子树都是完全二叉树。选项:A、正确B、错误正确答案:【正确】44、问题:完全二叉树适合使用顺序存储结构选项:A、正确B、错误正确答案:【正确】45、问题:对于任意的二叉树,如果其叶子结点数为n0,度为2的结点数为n2,则n2=n0+1。选项:A、正确B、错误正确答案:【错误】46、问题:对一棵树进行先根遍历与后根遍历,其中叶子结点出现的相对次序是相同的。选项:A、正确B、错误正确答案:【正确】47、问题:由二叉树的某种遍历方式产生的结果是一个线性序列。选项:A、正确B、错误正确答案:【正确】48、问题:用二叉树的先序序列和后序序列可以导出它的中序序列。选项:A、正确B、错误正确答案:【错误】49、问题:在某种遍历的线索二叉链表中,进行这种遍历时可以直接沿所有右指针一直搜索下去,从而访问所有结点。选项:A、正确B、错误正确答案:【错误】50、问题:可以不用栈实现基于中序线索二叉链表对二叉树进行中序遍历。选项:A、正确B、错误正确答案:【正确】51、问题:将一棵含有两个以上结点的树转换成二叉树后,该二叉树的根结点没有左子树。选项:A、正确B、错误正确答案:【错误】52、问题:树有先根遍历与中根遍历两种遍历方法。选项:A、正确B、错误正确答案:【错误】53、问题:树的孩子兄弟表示法是一种二叉链表表示法。选项:A、正确B、错误正确答案:【正确】54、问题:二叉树的先序遍历的递归算法的时间复杂度为线性级。选项:A、正确B、错误正确答案:【正确】55、问题:在哈夫曼树中,权值较大的叶子结点一般离根结点较远。选项:A、正确B、错误正确答案:【错误】56、问题:在哈夫曼编码中,当两个不同字符出现的频率相同时,其编码也相同。选项:A、正确B、错误正确答案:【错误】第七章图单元测试1、问题:设有5个结点的无向图,该图至少应有_________条边才能确保是一个连通图。选项:A、5B、6C、7D、8正确答案:【7】2、问题:设图G=(V,VR),其中:V={A,B,C,D,G},VR={(A,C),(A,D),(B,C),(B,D),(G,C),(B,G)},则对应的图形为_________。选项:A、B、C、D、正确答案:【】3、问题:设某有向图中有n个顶点,则该有向图对应的邻接表中有_________个表头结点。选项:A、n-1B、nC、n+1D、n+2正确答案:【n】4、问题:在一个无向图中所有顶点的度数之和等于所有边数的_________倍。选项:A、1B、2C、3D、1/2正确答案:【2】5、问题:一个无向连通图的生成树是该连通图的_____。选项:A、极大连通子图B、连通子图C、极小连通子图D、强连通子图正确答案:【极小连通子图】6、问题:设某无向图中有n个顶点,则该无向图邻接矩阵的大小是_________。选项:A、B、C、D、n(n+1)/2正确答案:【】7、问题:设有n个顶点e条边的无向图,采用邻接矩阵作为物理结构,则删除与某顶点Vi关联的所有边算法的时间复杂度为_________。选项:A、O()B、O(n*e)C、O(n+e)D、O(n)正确答案:【O(n)】8、问题:设有n个顶点e条弧的有向图,采用邻接表作为物理结构,则求某顶点Vi度的算法的时间复杂度为_________。选项:A、O()B、O(n*e)C、O(n+e)D、O(n)正确答案:【O(n+e)】9、问题:设无向图G=(V,E)和G'=(V',E'),如果G'是G的生成树,则下列说法中错误的是_____。选项:A、G'是G的子图B、G'是G的一个无环子图C、G'是G的极小连通子图且V=V'D、G'是G的连通分量正确答案:【G'是G的连通分量】10、问题:设G是一个非连通的无向图,共有10条边,则该图至少有_____个顶点。选项:A、5B、6C、7D、8正确答案:【6】11、问题:n个顶点的有向图为强连通图时,至少含有________。选项:A、n-1条弧B、n条弧C、n(n-1)/2条弧D、n(n-1)条弧正确答案:【n条弧】12、问题:如果从无向图的一个顶点出发,进行一次深度优先搜索能访问所有顶点,则该无向图是一个________。选项:A、连通图B、强连通图C、完全图D、DAG图正确答案:【连通图】13、问题:如图所示的有向图,共有________个强连通分量。选项:A、1B、2C、3D、4正确答案:【2】14、问题:在下图中,从顶点A出发进行深度优先遍历可得到的序列是_________。选项:A、ADCBGB、ACDBGC、ADGBCD、ABDCG正确答案:【ABDCG】15、问题:对图进行深度优先搜索遍历,需要借助的数据结构为________。选项:A、栈B、队列C、线索二叉树D、广义表正确答案:【栈】16、问题:对图进行广度优先搜索遍历,需要借助的数据结构为________。选项:A、栈B、队列C、线索二叉树D、广义表正确答案:【队列】17、问题:最小生成树是指________。选项:A、连通网的所有生成树中权值之和最小的生成树B、由连通网得到的边数最少的生成树C、由连通网得到的顶点数相对较少的生成树D、连通网的极小连通子图正确答案:【连通网的所有生成树中权值之和最小的生成树】18、问题:在下图中,从顶点A出发进行广度优先遍历可得到的序列是_________。选项:A、ADCBGB、ACDGBC、ADGBCD、AGBDC正确答案:【ADCBG】19、问题:对如图所示的无向连通网,从顶点A出发,使用Prim算法得到的最小生成树是________。选项:A、B、C、D、正确答案:【】20、问题:可借助于_________判别有向图中是否存在回路。选项:A、迪杰斯特拉算法B、FLOYD算法C、拓扑排序算法D、PRIM算法正确答案:【拓扑排序算法】21、问题:如图所示的DAG图,其拓扑排序序列为_________。选项:A、ADBGCB、ACDGBC、ADGBCD、AGBDC正确答案:【ADBGC】22、问题:下列关于工程计划的AOE网的叙述中,不正确的是_________。选项:A、关键活动不按期完成,会影响整个工程的完成时间B、任何一个关键活动的提前完成,整个工程的完成时间都会提前C、所有关键活动都提前完成,会提前整个工程的完成时间D、某个关键活动提前完成,可能会提前整个工程的完成时间正确答案:【任何一个关键活动的提前完成,整个工程的完成时间都会提前】23、问题:使用迪杰斯特拉最短路径算法,求一个源点到其它各顶点的最短路径,该算法的时间复杂度为________。选项:A、O()B、O(nlogn)C、D、正确答案:【O()】24、问题:使用弗洛伊德算法,求任意2个顶点的最短路径,该算法的时间复杂度为________。选项:A、O()B、O(nlogn)C、D、正确答案:【】25、问题:某无向图的邻接矩阵如下所示,可以得出,该图共有__________个顶点。选项:A、3B、4C、9D、5正确答案:【3】26、问题:如果n(n2)个顶点的有向图有二个强连通分量,则至少有n-1条弧。选项:A、正确B、错误正确答案:【正确】27、问题:n个顶点的无向图,至少需要n条边才可能是连通图。选项:A、正确B、错误正确答案:【错误】28、问题:连通分量是指无向图的极小连通子图。选项:A、正确B、错误正确答案:【错误】29、问题:无向图的邻接矩阵必然是对称矩阵。选项:A、正确B、错误正确答案:【正确】30、问题:有n(n1)个顶点,-

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论