【文档说明】国家开放大学数据结构本单元测试参考答案.pdf,共(37)页,976.292 KB,由小喜鸽上传
转载请保留链接:https://www.ichengzhen.cn/view-155455.html
以下为本文档部分文字说明:
国家开放大学《数据结构(本)》单元测试参考答案单元1绪论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.数据元素是数据的最小单位(×)。12.数据的逻辑结构是指数据的各数据项之间的逻辑关系(×)
。13.算法的优劣与算法描述语言无关,但与所用计算机有关(×)。14.算法是在数据结构的基础上对特定问题求解步骤的一种描述,也是若干条指令组成的优先序列(√)。15.算法可以用不同的语言描述,如果用C语言等高级语言来描述,则算法实际上就是程序了(×)。16.程序一定是算法(×)。17.数据的
物理结构是指数据在计算机内的实际存储形式(√)。18.数据结构中评价算法的两个重要指标是时间复杂度和空间复杂度(√)。19.在顺序存储结构中,有时也存储数据结构中元素之间的关系(×)。单元2线性表1.线性
表的顺序存储比链式存储最与利于进行()操作。A.表头插入或删除B.表尾插入或删除C.按值插入或删除D.查找2.链表不具备的特点是()。A.不必事先估计存储空间B.所需空间与其长度成正比C.插入、删除不需要移动元素D.可随机访问任一结点3.向一个有1
27个元素的顺序表中插入一个新元素,并保持原来的顺序不变,平均要移动()个元素。A.63B.7C.8D.63.54.在一个长度为n的顺序存储线性表中,向第i个元素(1≤i≤n)之前插入一个新元素时,需要依次后移()个元素。A.n-i-1B.n-i+1C
.iD.n-i5.在一个长度为n的顺序存储线性表中,删除第i个元素(1≤i≤n),需要前移()个元素。A.n-i-1B.iC.n-i+1D.n-i6.一个顺序存储线性表的第一个元素的存储地址是90,每个元素的长度是2,则第6个元素的存储地址
是()。A.106B.98C.102D.1007.用链表表示线性表的优点是()。A.便于插入和删除B.便于随机存取C.数据元素的物理顺序和逻辑顺序相同D.花费的存储空间较顺序存储少8.带头结点的链表为空的判断条件是()(设头指针为
head)。A.head->next==NULLB.head->next==headC.head==NULLD.head!=NULL9.非空的单向循环链表的尾结点满足()(设头指针为head,指针p指向尾结点)。A.p->next==NULLB.p==h
eadC.p->next==headD.p==NULL10.在一个单链表中,p、q分别指向表中两个相邻的结点,且q所指结点是p所指结点的直接后继,现要删除q所指结点,可用语句()。A.p->next=qB.p->next=q->nextC.q->next=NULLD.
p=q->next11.线性表在链式存储中各结点之间的地址()。A.必须连续B.部分地址必须连续C.连续与否无所谓D.不能连续12.有关线性表的正确说法是()。A.表中的元素必须按由小到大或由大到下排序B.线性表至少
要求一个元素C.除了一个和最后一个元素外,其余元素都有一个且仅有一个直接前驱和一个直接后继D.每个元素都有一个直接前驱和一个直接后继13.若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用()存储方式最省时
间。A.双向循环链表B.带头结点的双向循环链表C.单向循环链表D.顺序表14.在单链表中,若*p不是尾结点,在其后插入*s结点的操作是()。A.s->next=p->next;p=s;B.s->next=p
->next;p->next=s;C.s->next=p;p->next=s;D.p->next=s;s->next=p;15.在一个长度为n的顺序表中为了删除第5个元素,由第6个元素开始从后到前依次移动了15个元素。则原顺序表的长度为()。A.19B.
25C.21D.2016.对于一个具有n个结点的单向链表,在给定值为x的结点之后插入一个新结点的时间复杂度为()。A.O(1)B.O(n3)C.O(n2)D.O(n)17.设顺序存储的线性表长度为n,对于插入操作,
设插入位置是等概率的,则插入一个元素平均移动元素的次数为()。A.nB.n-i+1C.n-1D.n/218.线性表的顺序结构中,()。A.进行数据元素的插入、删除效率较高B.逻辑上相邻的元素在物理位置上也相邻C.逻辑上相邻的元素在物理位
置上不一定相邻D.数据元素是不能随机访问的19.以下说法中不正确的是()。A.双向循环链表中每个结点需要包含两个指针域B.单向循环链表中尾结点的指针域中存放的是头指针C.顺序存储的线性链表是可以随机访问的D.
已知单向链表中任一结点的指针就能访问到链表中每个结点20.以下表中可以随机访问的是()。A.单向链表B.单向循环链表C.顺序表D.双向链表21.设链表中的结点是NODE类型的结构体变量,且有NODE*p;为了申请一个新结点,并由p指
向该结点,可用以下语句()。A.p=(NODE)malloc(sizeof(p));B.p=(NODE*)malloc(sizeof(NODE));C.p=(*NODE)malloc(sizeof(NODE));D.p=(NODE*)malloc(s
izeof(p));22.设head为非空的单向循环链表头指针,p指向链表的尾结点,则满足逻辑表达式()的值为真。A.p->next=NULLB.p==NULLC.p->next==headD.p-==head23.顺序存取的线性表乐意随
机存取(√)。24.由于顺序存储要求连续的存储区域,所以在存储管理上不够灵活(√)。25.线性表中的元素可以是各种各样的,但同一线性表中的数据元具有相同的特性,因此是属于同一数据对象(√)。26.在线性表的顺序存储结构中,逻辑上相邻的两个元素但是在物
理上位置并不一定是相邻的(×)。27.在单链表中,任何两个元素的存储位置之间都有固定的联系,因为可以从头结点进行查找任何一个元素(×)。28.线性表的链式存储结构优于顺序存储结构(×)。29.在线性表的顺序存储结构中,插入和删
除元素时,移动元素的个数与该袁术的位置有关(√)。30.在单链表中,要取得某个元素,只要知道该元素的指针机可,因此单链表是随机存取的存储结构。(×)31.顺序存储方式只能用于存储线性结构。(×)32.
顺序存储方式的有点是存储密度大,且插入、删除运算效率高。(×)单元3栈和队列1.一个顺序栈一旦被声明,其占用空间的大小()。A.已固定B.动态变化C.可以改变D.不能固定2.链栈和顺序栈相比,有一个比较明显的缺点,即()。A.不会出现栈空的情况B.插入操作更加方便C.删除操作更加方便D.通
常不会出现栈满的情况3.用单链表表示的链式队列的队头在链表的()位置。A.链头B.任意位置C.链尾D.链中4.在解决计算机主机与打印机之间速度不匹配问题时通常设置一个打印数据缓冲区,主机将要输出的数据依次写入缓冲区中,而打印机则从缓冲
区中取出数据打印,该缓冲区应该是一个()结构。A.数组B.堆栈C.队列D.线性表5.循环队列A[m]存放其元素,用front和rear分别表示队头及队尾,则循环队列满的条件是()。A.(rear+1)%m=frontB.(rear=frontC.(rear+1)%m-1=frontD
.(rear=front+16.在一个栈顶指针为top的链栈中,将一个p指针所指的结点入栈,应执行()。A.p->next=top;top=p;B.top->next=p;C.p->next=top->nex
t;top->next=p;D.p->next=top->next;top=top->next;7.在一个栈顶指针为top的链栈中删除一个结点时,用x保存被删结点的值,则执行()。A.x=top->data;top=top->nex
t;B.x=top;top=top->next;C.top=top->next;x=top->data;D.x=top->data;8.在一个链队中,设front和rear分别为队首和队尾指针,则插入p所指结点时,应执行()。A.p->next=rear;rear=p;B
.rear->next=p;rear=p;C.front->next=p;front=p;D.p->next=front;front=p;9.在链队列中,f和r分别为队头和队尾指针,要把s所指结点入队,应执行()。A.r->ne
xt=s->next;r=s;B.r->next=s;C.r->next=s;r=s;D.r->next=s->next;10.设top是一个链栈的栈顶指针,栈中每个结点由一个数据域data和指针域next组成,设用x接收栈顶元
素,则取栈顶元素的操作为()。A.x=top->data;top=top->next;B.top=top->next;C.x=top->data;D.top->data=x;11.一个队列的入队序列是2,4,6,8,则队列的输出序列是()。A.6,4,2,8B.4,2,8,6C.
2,4,6,8D.8,6,4,212.一个栈的进栈序列是5,6,7,8,则栈的不可能的出栈序列是()。(进出栈操作可以交替进行)A.8,7,6,5B.7,6,8,5C.7,6,5,8D.5,8,6,713.栈的插入删除操作在()进行。A.栈底B.栈顶C.指定位置D.任意位置
14.栈和队列的相同点是()。A.逻辑结构与线性表相同,都是操作规则受到限制的线性表B.逻辑结构与线性表不同C.都是后进后出D.都是后进先出15.以下说法正确的是()。A.栈的特点是先进先出,队列的特点是
先进后出B.栈和队列的特点都是先进后出C.栈和队列的特点都是先进先出D.栈的特点是先进后出,队列的特点是先进先出16.设有一个带头结点的链队列,队列中每个结点由一个数据域data和指针域next组成,front和rear分别
为链队列的头指针和尾指针。设p指向要入队的新结点(该结点已被赋值),则入队操作为()。A.rear->next=p;p=rear;B.rear->next=p;rear=p;C.p=rear->next;rear=p
;D.rear=p;rear->next=p;17.设有一个带头结点的链队列,队列中每个结点由一个数据域data和指针域next组成,front和rear分别为链队列的头指针和尾指针,要执行出队操作,用x保存
出队元素的值,p为指向结点类型的指针,可执行如下操作:p=front->next;x=p->data;然后指行()。A.front->next=p->next;B.front=p->next;C.front=p;D.front->next=p;18.以下说法不正确的是(
)。A.顺序队列中,当尾指针已经超越队列存储空间的上界,则一定是队列已满B.顺序队列中,队列的头指针和尾指针均超越队列存储空间的上界,则队列已空C.顺序栈中,栈满时再进行进栈操作称为“上溢”D.顺序栈中,栈空时再作出栈栈操作称为“下溢”19.一个递归算法必须包
括()。A.迭代部分B.终止条件和迭代部分C.递归部分D.终止条件和递归部分20.假定一个链式队列的队头和队尾指针分别为front和rear,则判断队空的条件为()。A.front=NULLB.front!=NULLC.rear!=NULLD.front=
rear21.向顺序栈中压入新元素时,应当()。A.先存入元素,再移动栈顶指针B.同时进行C.先后次序无关紧要D.应当先移动栈顶指针,再存入元素22.判断一个循环队列Q(最多元素为m)为满的条件是()。A.Q->front==(Q->rear+1)%mB.Q->re
ar!=(Q->front+1)%mC.Q->front==Q->rearD.Q->front=Q->rear+122.判断栈满(元素个数最多n个)的条件是()。A.top==n-1B.top!=0C.top=-1D.top==024.队列的删除操作是在()。A
.队头B.队尾C.队后D.队前25.一个队列的入队序列是a,b,c,d,按该队列的可能输出序列使各元素依次入栈,该栈的可能输出序列是()。(进栈出栈可以交替进行)。A.d,a,b,cB.d,b,a,cC.c,a,b,dD.d,c,b,a单元4串1.以下陈述中正确
的是()。A.串的长度必须大于零B.串是一种特殊的线性表C.空串就是空格串D.串中元素只能是字母2.设有两个串p和q,其中q是p的子串,q在p中首次出现的位置的算法称为()。A.匹配B.求子串C.连接D
.求串长3.串是()。A.任意个字母的序列B.不少于一个字符的序列C.有限个字符的序列D.不少于一个字母的序列4.串的长度是指()。A.串中所含字符的个数B.串中所含不同字母的个数C.串中所含不同字符的个数D.串中所含非空格字符的个数5.在C语言中,存储字符串“ABCD”
需占用()字节。A.2B.3C.4D.56.下面关于串的叙述中,不正确的是()。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.串函数StrCmp(“abA”,”aba”)的值为()。A.“abAaba”B.-1C.1D.014.在C语言中,存储字符串
“ABCD”需要占用()字节。A.2B.3C.4D.515.设主串为“ABcCDABcdEFaBc”,以下模式串能与主串成功匹配的是()。A.AbcB.BCdC.ABCD.Bcd16.字符串a1=“AEIJING”,a2=“AEI”,a3=“AEFANG”,a4=“
AEFI”中最大的是()。A.a4B.a3C.a2D.a117.字符串〝abcd321ABCD〞的子串是()。A.〝321a〞B.abcDC.〝abcABCD〞D.〝21ABC〞18.数组a经初始化chara[]=“English”;a[1]中存放的是()。A.〝E〞B
.字符EC.字符nD.〝n〞19.空串的长度为()。A.1B.2C.0D.3单元5数组和广义表1.一维数组A采用顺序存储结构,每个元素占用4个字节,第8个元素的存储地址为120,则该数组的首地址是()。
A.90B.32C.92D.882.稀疏矩阵采用压缩存储的目的主要是()。A.减少不必要的存储空间的开销B.对矩阵元素的存取变得简单C.去掉矩阵中的多余元素D.表达变得简单3.一个非空广义表的表头()。A.只能是原子B.不可能是原子C.只能是子表D.
可以是子表或原子4.常对数组进行的两种基本操作是()。A.索引与、和修改B.建立与删除C.查找和修改D.查找与索引5.在二维数组A[8][10]中,每一个数组元素A[i][j]占用3个存储空间,所有数组元素相继存放于一个连续的存储空间中,则存放该
数组至少需要的存储空间是()。A.80B.100C.270D.2406.设有一个18阶的对称矩阵A,采用压缩存储的方式,将其下三角部分以行序为主序存储到一维数组B中(数组下标从1开始),则矩阵中元素A10,8在一维数组B中的下标是()。A.58B.53C.18D.457.广义表((a
))的表尾是()。A.aB.((a))C.(a)D.08.设有一个10阶的对称矩阵A,采用压缩存储的方式,将其下三角部分以行序为主序存储到一维数组B中(数组下标从1开始),则矩阵中元素A8,5在一维数组B中的下标是()。A.85B.41C.32D.339.设广义表类((a,b,
c)),则L的长度和深度分别为()。A.1和2B.1和3C.2和3D.1和110.广义表(a,a,b,d,e,((i,j),k))的表头是________。A.(a)B.aC.(a,b)D.a,(a,b)11.
广义表的(a,d,e,(i,j),k)表尾是________。A.kB.(k)C.(d,e,(i,j),k)D.((i,j),k)12.稀疏矩阵的压缩存储方式通常有两种,即()。A.三元组和十字链表B.二元组和三元组C.散
列和十字链表D.三元组和散列13.设有一个对称矩阵A,采用压缩存储的方式,将其下三角部分以行序为主序存储到一维数组B中(数组下标从1开始),B数组共有55个元素,则矩阵是()阶的对称矩阵。A.5B.20C.15D.1014.设有一个18阶
的对称矩阵A,采用压缩存储的方式,将其下三角部分以行序为主序存储到一维数组B中(数组下标从1开始),则数组中第53号元素对应于矩阵中的元素是()。A.a8,1B.a8,5C.a10,8D.a7,615.对稀疏矩阵进行压缩存储,可采用三元组表
,一个10行8列的稀疏矩阵A共有73个零元素,其相应的三元组表共有()个元素。A.7B.10C.80D.816.广义表((a))的表尾是()。A.()B.(a)C.aD.((a))17.广义表(a,(a,b
),d,e,((i,j),k))的长度和深度分别是()。A.5,5B.6,6C.5,3D.6,4单元6树和二叉树1.假定一棵二叉树中,双分支结点数为15,单分支结点数为30,则叶子结点数为()。A.17B.15C.47D.162.已知某二叉树的后续遍历序列是dabec
,中序遍历是debac,则它的先序遍历序列是()。A.acbedB.cedbaC.deabcD.decab3.二叉树第k层上最多有()个结点。A.2k-1B.2k-1C.2k-1D.2k4.二叉树的深度为k,则二叉树最多有()个结
点。A.2k-1B.2k-1C.2kD.2k-15.设某一二叉树先序遍历为abdec,中序遍历为dbeac,则该二叉树后序遍历的顺序是()。A.abdecB.debacC.abedcD.debca6.设某一二叉树中序遍历为badce,后序遍历
为bdeca,则该二叉树先序遍历的顺序是()。A.decabB.abcdeC.adbecD.debac7.树最适合于用来表示()。A.顺序结构的数据B.元素之间无前驱和后继关系的数据C.线性结构的数据D.元素之间有包含和层次关系的数据8.一棵非空的二叉树,先序遍历与后续遍历正好相反,则该二叉
树满足()。A.无右孩子B.无左孩子C.任意二叉树D.只有一个叶子结点9.设a,b为一棵二叉树的两个结点,在后续遍历中,a在b前的条件是()。A.a在b上方B.a在b右方C.a在b下方D.a在b左方10.权值为{1,2,6,8}的四个结点构成的哈夫曼树的带权路径长度是()。A.28B.19C
.18D.2911.如果将给定的一组数据作为叶子数值,所构造出的二叉树的带权路径长度最小,则该树称为()。A.二叉树B.平衡二叉树C.完全二叉树D.哈夫曼树12.下列有关二叉树的说法正确的是()。A.完全二叉树中,任何一个结点的度,或者为0或者为2B.二叉树中结点个数必大于0
C.二叉树中度为0的结点的个数等于度为2的结点的个数加1D.二叉树的度是213.二叉树是非线性数据结构,所以()。A.顺序存储结构和链式存储结构都能存储B.它不能用链式存储结构存储C.它不能用顺序存储结构存储D.顺序存储结构和链式存储结构都不能使用14.任何
一棵二叉树的叶结点在先序、中序和后序遍历序列中的相对次序()。A.发生改变B.不能确定C.不发生改变D.以上都不对15.一棵有n个结点采用链式存储的二叉树中,共有()个指针域为空。A.nB.n+1C.n-2D.n-116.设一棵哈夫曼树共有n个非叶结点,
则该树有()个叶结点。A.n-1B.n+1C.nD.2n17.一棵完全二叉树共有5层,且第5层上有六个结点,该树共有()个结点。A.23B.30C.21D.2018.在一棵二叉树中,若编号为i的结点是其双亲结点的右孩子,则双亲结点的顺序编号为()。A.i
/2向下取整B.2i+1C.i/2.0D.i/2+119.一棵采用链式存储的二叉树中有n个指针域为空,该二叉树共有()个结点。A.n-1B.n+1C.n-2D.n20.一棵结点数31<n<40的完全二叉树,最后一层有4个结点,则该树有()个叶结点。A.35
B.36C.18D.1721.设一棵哈夫曼树共有2n+1个结点,则该树有()个非叶结点。A.n-1B.2nC.nD.n+122.在一棵具有35个结点的完全二叉树中,该树的深度为()。A.6B.7C.8D.523.在一棵二叉树中,若编号为i的结点存在左孩子,则左孩子结点的顺序编号为()。
A.2i+1B.2i+2C.2iD.2i-124.在一棵具有n个结点的二叉树的第i层上,最多具有()个结点。A.2nB.2i+1C.2iD.2i-125.以二叉链表作为二叉树的存储结构,在有n个结点的二叉链表中(n>0),链表中空链域的个数为()。A.n+1B.
n-1C.2n+1D.2n-126.将含有150个结点的完全二叉树从根这一层开始,每一层从左到右依次对结点进行编号,根结点的编号为1,则编号为69的结点的双亲结点的编号为()。A.35B.34C.36D.3327.有n个叶子结点的哈夫曼树的结点总数为()。A.2n+1
B.2n-1C.2nD.不确定28.下面关于二叉树的结论正确的是()。A.二叉树中,度为0的结点个数等于度为2的结点个数加1B.二叉树的度是2C.二叉树中结点的个数必大于0D.完全二叉树中,任何一个结点的度,或者为0,或者为2单
元7图1.在一个图G中,所有顶点的度数之和等于所有边数之和的()倍。A.1/2B.4C.2D.12.邻接表是图的一种()。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.已知下图所示的一个图,若从顶点V1出发,按深度优先搜索法进行遍历,则可能得到的
一种顶点序列为()。A.V1V2V4V8V3V5V6V7B.V1V2V4V5V8V3V6V7C.V1V2V4V8V5V3V6V7D.V1V3V6V7V2V4V5V88.已知如图2所示的一个图,若从顶点a出发,按广度优先搜索法进行遍历,则可能得到的一种顶点
序列为()。A.aebcfdB.abcedfC.abcefdD.acfdeb9.已知如图3所示的一个图,若从顶点a出发,按深度优先搜索法进行遍历,则可能得到的一种顶点序列为()。A.aedfcbB.acfebdC.aebcfdD.abe
cdf10.一个具有n个顶点的无向完全图包含()条边。A.n(n-1)/2B.n(n+1)C.n(n-1)D.n(n+1)/211.已知如图4所示的一个图,若从顶点a出发,按深度优先搜索法进行遍历,则可能得到的一种顶点序列为(
)。A.aebcfdB.abecdfC.aedfcbD.acfebd12.已知如图5所示的一个图,若从顶点a出发,按广度优先搜索法进行遍历,则可能得到的一种顶点序列为()。A.abcedfB.aebcfdC.abcefdD.acfdeb13.已知如图6所示的一个图,若从顶
点V1出发,按深度优先搜索法进行遍历,则可能得到的一种顶点序列为()。A.V1V2V4V8V5V3V6V7B.V1V2V4V5V8V3V6V7C.V1V2V4V8V3V5V6V7D.V1V3V6V7V2V4V5V814.已知如图7所示的一个图,若从顶点
V1出发,按深广优先搜索法进行遍历,则可能得到的一种顶点序列为()。A.V1V2V3V4V5V6V7V8B.V1V2V3V6V7V4V5V8C.V1V2V3V4V8V5V6V7D.V1V2V3V4V5V8V6V715.采用邻接表存储的
图的广度优先搜索遍历算法类似于二叉树的()。A.后续遍历B.中序遍历C.层次遍历D.先序遍历16.下面结论中不正确的是()。A.按广度优先搜索遍历时,与始点相邻的结点先于不与始点相邻的结点访问B.图的多重邻接表表示法中,表中
结点的数目等于图中边的条数C.一个图按广度优先搜索法遍历的结果是唯一的D.无向图的邻接表表示法中,表中结点的数目是图中边的条数的2倍17.下面说法不正确的是()。A.图的遍历是从给定的原点出发每一个顶点仅被访问一次
B.图的深度遍历不适用于有向图C.遍历的基本算法有两种:深度遍历和广度遍历D.图的深度遍历是一个递归过程18.任何一棵无向连通图的最小生成树()。A.可能不存在B.只有一棵C.一定有多棵D.有一棵或多棵19.在一个具有n个顶点的无向图中,要连通全部顶点
至少需要()边。A.n-1B.nC.n/2D.n+120.采用邻接表存储的图的深度优先搜索遍历算法类似于二叉树的()。A.层次遍历B.后续遍历C.中序遍历D.先序遍历单元8查找1.线性表只有以()方式存储,才能进行
折半查找。A.链接B.顺序C.二叉树D.关键字有序的2.有序表为{2,4,10,13,33,42,46,64,76,79,85,95,120},用折半查找值为85的结点时,经()次比较后成功查到。A.1B.8C.4D.23.采用顺序查找法对长度为n(n为偶数)的线性表进行查找,采用从前向后的方向
查找。在等概率条件下成功查找到前n/2个元素的平均查找长度为()。A.(n+1)/2B.n/2C.(n+2)/4D.(2n+1)/44.对二叉排序树进行()遍历,可以使遍历所得到的序列是有序序列。A.按层次B.中序C.前序D.后序5.以下说法正确的是()
。A.二叉树的根结点值大于其左子树结点的值,小于右子树结点的值,则它是一棵二叉排序树。B.二叉树中任一结点的值均大于其左孩子的值,小于其右孩子的值。则它是一棵二叉排序树。C.二叉排序树中某一结点的左儿子一定小于树中任一个结
点的右儿子。D.二叉排序树中任一棵子树都是二叉排序树。6.对线性表进行二分查找时,要求线性表必需()。A.以顺序方式存储B.以链接方式存储C.以链接方式存储,且结点按关键字有序排列D.以顺序方式存储,且结点按关键字有序排列7.使用折
半查找法时,要求查找表中各元素的键值必须是()排列的。A.递减B.无序C.递增或递减D.递增8.已知一个有序表为{11,22,33,44,55,66,77,88,99},则顺序查找元素55需要比较()次。A.5B.3C.4D.69.有一个长度为10的有序表,按折半查找对该表进行查
找,在等概率情况下查找成功的平均比较次数为()。A.31/10B.29/9C.26/10D.29/1010.采用分块查找时,若线性表中共有324个元素,查找每个元素的概率相同,假设采用顺序查找来确定结点所在的块,每块应分()个结点最佳。A.6B.324C.18D.1011.如果要求一个线性表
既能较快地查找,又能动态适应变化要求,可以采用()查找方法。A.折半B.分块C.顺序D.散列12.关于哈希查找的说法正确的是()。A.删除一个元素后,不管用哪种方法处理冲突,都只需简单地把该元素删除掉B.因为冲突是不可避免的,所以装填因子越小越好C.除留余数法是最好的D.哈希函数的好坏要根据具体情
况而定13.采用顺序查找方法查找长度为n的线性表时,每个元素的平均查找长度为()。A.n/2B.(n+1)/2C.(n-1)/2D.n14.采用分块查找时,数据的组织方式为()。A.把数据分城若干块,每块内数据有序,每块内最大(或最小)的数据组成索引表B.把数据分城若干块,每块内数据
有序C.把数据分城若干块,块内数据不必有序,但块间必需有序,每块内最大(或最小)的数据组成索引表D.把数据分城若干块,每块(除最后一块外)中的数据个数相等15.假设在有序线性表A[1..20]上进行折半查找,则比较五次查找成功的结点数为()。A.8B
.4C.5D.6单元9排序1.设有1000个无序的元素,希望用最快的速度挑选出其中前10个最大的元素,最好选用()排序法。A.冒泡排序B.基数排序C.快速排序D.堆排序2.对数据元素序列(49,72,68,13,38,50,97,27)进行排序,前三趟排序结果时的结
果依次为第一趟:49,72,68,13,38,50,97,27;第二趟:49,68,72,13,38,50,97,27;第三趟:13,49,68,72,38,50,97,27。该排序采用的方法是()。A.选择排序法B.插入排序法C.堆排序法D.冒泡排序法3.一
组记录的关键字序列为(47,80,57,39,41,46),利用堆排序(堆顶元素是最小元素)的方法建立的初始化堆为()。A.39,41,46,80,47,57B.39,47,46,80,41,57C.41,39,46,47,57,80D.39,80,46
,47,41,574.一组记录的关键字序列为(37,70,47,29,31,85),利用快速排序,以第一个关键字为分割元素,经过一次划分后结果为()。A.31,29,37,47,77,85B.31,29,37,85,47
,70C.29,31,37,47,70,85D.31,29,37,70,47,855.下述几种排序方法中,要求内存量最大的是()。A.插入排序B.选择排序C.归并排序D.快速排序6.若待排序序列在排序前已按关键字递增排列,则采用()方法比较次数最多。A.归并排序B.直接插入排序C
.直接选择排序D.归并排序7.将两个各有n个元素的有序表归并成一个有序表,其最少的比较次数是()。A.n-1B.2n-1C.nD.2n8.就排序算法所用的辅助空间而言,堆排序、快速排序、归并排序的关系是
()。A.堆排序<快速排序<归并排序B.堆排序<归并排序<快速排序C.堆排序>快速排序>归并排序D.堆排序>归并排序>快速排序9.一组记录的关键字序列为(25,50,15,35,80,85,20,40,36,70),其中含有5个长度为2的
有序表,按归并排序的方法对该序列进行一趟归并后的结果为()。A.(15,25,35,50,80,20,85,45,70,36)B.(15,25,35,50,80,20,36,40,70,85)C.(15,
25,35,50,20,40,80,85,36,70)D.(15,25,50,35,80,85,20,36,40,70)10.对n个元素进行冒泡排序,通常要进行n-1趟冒泡,在第j趟冒泡中共要进行()次元素间
的比较。A.n-jB.jC.j-1D.n-j-111.排序方法中,从未排序序列中依次取出元素与已排序序列(初始为空)中的元素进行比较(要求比较次数尽量少),然后将其放入已排序序列的正确位置的方法,是()排序。A.冒
泡B.折半插入C.选择排序D.直接插入12.用某种排序方法对线性表(25,84,21,47,15,27,68,35,20)进行排序时,元素序列的变化情况如下:(1)25,84,21,47,15,27,68,35,20(2)20,15,21,25,47,27,68,35,
84(3)15,20,21,25,35,27,47,68,84(4)15,20,21,25,27,35,47,68,84则采用的排序方法是()。A.插入排序B.选择排序C.快速排序D.归并排序13.一组记录的关键字序列为(36,69,46,2
8,30,84),利用快速排序,以第一个关键字为分割元素,经一次划分后结果为()。A.30,28,36,69,46,74B.30,28,36,74,46,69C.28,30,36,46,69,74D.30,28,36,46,69,7414.设已有m个元素有序,在未排好
序的序列中挑选第m+1个元素,并且只经过一次元素间的交换,就使第m+1个元素排序到位,该方法是()。A.折半排序B.归并排序C.简单选择排序D.冒泡排序15.一组记录的关键字序列为(46,79,56,38,40,45),利用堆排序(堆顶元素是最小元素)的方法建立的初始堆为
()。A.40,38,45,46,56,79B.38,79,45,46,40,56C.38,40,45,79,46,56D.38,46,45,79,40,5616.已知10个数据元素为(54,28,16,34,73,62,95,6
0,26,43),对该数列从小到大排序,经过一趟冒泡排序后的序列为()。A.28,16,34,54,62,73,60,26,43,95B.28,16,34,54,62,60,73,26,43,95C.16,28,34,54,62,60,73,26,43,95D.16,28,34,
54,73,62,60,26,43,9517.对具有n个元素的任意序列采用插入排序法进行排序,排序趟数为()。A.nB.n+1C.n-1D.log2n