查看所有试题
- 在下列情况中,可称为二叉树的是()。依次在初始为空的队列中插入元素a,b,c,d以后,紧接着做了两次删除操作,此时的队头元素是()。广义表A=((a),a)的表头是()。在数据结构中,与所使用的计算机无关的是数据的(
- 对某二叉树进行先序遍历的结果为ABDEFC,则后序遍历的结果是()。根据使用频率为5的字符设计的哈夫曼编码不可能是()设单链表中结点结构为(data,001,0001,001,10,11
D、00,100,101,111#p->link=p->link->
- 表达式A*(B+C)/(D-E+F)的后缀表达式是()。栈和队列都是()。设有广义表D=(a,b,D),其长度为()。A*B+C/D-E+F
AB*C+D/E-F+
ABC+*DE-F+/#
ABCDED*+/-+顺序存储的线性结构
链式存储的线性结构
限制存取点的线
- 将一棵有100个结点的完全二叉树从根这一层开始,每一层上从左到右依次对结点进行编号,根结点的编号为1,则编号为49的结点的左孩子编号为()。广义表((a),a)的表尾是()。图的广度优先搜索类似于树的()次序遍历
- 5,6,8}作为权值构造哈夫曼树,则该树的带权路径长度为()。允许对队列进行的操作有()。若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点,则采用()存储方式最节省运算时间。数组A中,每个元
- 某二叉树的中序序列为ABCDEFG,后序序列为BDCAFGE,则其左子树中结点数目为()。设计一个判别表达式中左、右括号是否配对出现的算法,采用()数据结构最佳若声明一个浮点数数组如下:froataverage[]=newfloat[30];
- 在一棵具有5层的满二叉树中结点总数为()。若对n个元素进行直接插入排序,则进行任一趟排序的过程中,为寻找插入位置而需要的时间复杂度为()31#
32
33
16O(1)
O(n)#
O(n2)
O(log2n)
- 用顺序存储的方法,将完全二叉树中所有结点按层逐个从左到右的顺序存放在一维数组R[1..N]中,若结点R[i]有右孩子,则其右孩子是()。设计一个判别表达式中左、右括号是否配对出现的算法,采用()数据结构最佳R[2i-1]
R
- 设a,b为一棵二叉树上的两个结点,在中序遍历时,a在b前面的条件是()。a在b的右方
a在b的左方#
a是b的祖先
a是b的子孙
- 广义表运算式HEAD(TAIL((a,b,c),(x,y,z)))的结果是:()。(x,y,z)
- 二叉树的深度为k,则二叉树最多有()个结点。设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用()最节省时间。字符串采用结点大小为1的链表作为其存储结构,是指()2k
2k-1
2k-1#
2k-1单链表
单循环链表
- 正确的是()。顺序表中,插入一个元素所需移动的元素平均数是()。在无向图中定义顶点vi与vj之间的路径为从vi到vj的一个()。若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点,2,3,n,p2,p3,
- 已知二维数组A[m][n]采用行序为主方式存储,每个元素占k个存储单元,并且第一个元素的存储地址是LOC(A[0][0]),则A[i][j]的地址是()。线性表是具有n个()的有限序列。以下数据结构中,()是线性结构。对待排序的元
- 稀疏矩阵一般的压缩存储方法有两种,即()。向一个有127个元素的顺序表中插入一个新元素并保持原来顺序不变,平均要移动个元素()。串是一种特殊的线性表,其特殊性体现在()和顺序栈相比,链栈有一个比较明显的优势
- 广义表A=((a),a)的表头是()。串与普通的线性表相比较,它的特殊性体现在()。n个节点的完全二叉树,编号为i的节点是叶子结点的条件是()a
A.#
b
(A.)顺序的存储结构
链式存储结构
数据元素是一个字符#
数据
- 常对数组进行两种基本操作是()。一个顺序表的第一个元素的存储地址是90,每个元素的长度为2,则第6个元素的存储地址是()。对一个满二叉树,m个叶子,n个结点,深度为h,则()。任何一棵二叉树的叶子结点在前序、中序
- 对一些特殊矩阵采用压缩存储的目的主要是为了()。任一个有向图的拓扑序列()。表达变得简单
对矩阵元素的存取变得简单
去掉矩阵中的多余元素
减少不必要的存储空间的开销#不存在
有一个
一定有多个
有一个或多个#
- 广义表(a,b,c)的表尾是()。计算机算法必须具备输入、输出和()等5个特性栈的插入和删除操作在()。对于具有n个顶点的图,若采用邻接矩阵表示,则该矩阵的大小为()。b,c
(b,C.#
c
C.可行性、可移植性和可扩充
- 采用稀疏矩阵的三元组表形式进行压缩存储,若要完成对三元组表进行转置,只要将行和列对换,这种说法()。某算法的语句执行频度为(3n+nlog2n+n2+8),其时间复杂度表示()。下面有向图所示的拓扑排序的结果序列是()
- 广义表G=(a,b(c,d,(e,f)),g)的长度是()。判定一个栈ST(最多元素为m0)为空的条件是()3#
4
7
8ST->top<>0
ST->top=0#
ST->top<>m0
ST->top=m0
- 数组A[0..5,0..6]的每个元素占5个字节,将其按列优先次序存储在起始地址为1000的内存单元中,则元素A[5][5]的地址是()。已知图的邻接矩阵同上题8,根据算法,则从顶点0出发,按深度优先遍历的结点序列是()1175#
1180
- 一个非空广义表的表头()。向一个有127个元素的顺序表中插入一个新元素并保持原来顺序不变,平均要移动个元素()。对一个满二叉树,m个叶子,n个结点,深度为h,则()。算法的时间复杂度取决于()。在有向图中每个顶
- 稀疏矩阵的常见压缩存储方法有()两种。权值为{1,2,6,8}的四个结点构成的哈夫曼树的带权路径长度是()。算法的计算量的大小称为计算的()。用链表表示线性表的优点是()。二维数组和三维数组
三元组和散列表
三
- 80,65,30,80,50,80,65,55,80,30
- 设广义表L=((a,b,c)),则L的长度和深度分别为()。树中所有结点的度之和等于所有结点数加()。1和1
1和3
1和2#
2和30
1
-1#
2
- 75,77,65,40,14,30,65,55,55,100
- 函数实现串的模式匹配算法,请在空格处将算法补充完整。intindex_bf(sqstring*s,sqstring*t,intstart){inti=start-1,j=0;while(ilen&&jlen)if(s->data[i]==t->data[j]){i++;j++;}else{i=()
- 完全二叉树某结点有右子树,则必然有左子树。栈的数组表示中,top为栈顶指针,栈空的条件是()。线索二叉树是一种()构。正确#
错误top=0#
top=maxSize
top=maxSize
top=-1逻辑
逻辑和存储
物理#
线性
- 求子串在主串中首次出现的位置的运算称为()。采用简单选择排序,比较次数与移动次数分别为()。一个广义表的表尾总是一个()。模式匹配O(n),O(logn)
O(logn),0(n*n)
0(n*n),0(n)#
0(nlogn),0(n)
- KMP算法的最大特点是指示主串的指针不需要回溯。对待排序的元素序列进行划分,将其分为左、右两个子序列,再对两个子序列施加同样的排序操作,直到子序列为空或只剩一个元素为止。这样的排序方法是()。正确#
错误直接
- 设SUBSTR(S,i,k)是求S中从第i个字符开始的连续k个字符组成的子串的操作,则对于S=’Beijing&Nanjing’,SUBSTR(S,4,5)=()。希尔排序属于()‘ijing’
‘jing&’#
‘ingNa’
‘ing&N’交换排序
归并排序
选择
- 设串长为n,模式串长为m,则KMP算法所需的附加空间为()。堆排序是一种()排序。若查找每个记录的概率均等,则在具有n个记录的连续顺序文件中采用顺序查找法查找一个记录,其平均查找长度ASL为()。堆是一种()排序
- 空串和空格串()对序列(22,19,49,12,30,65,22,49,35,86)
- 已知串S=’aaab’,则next数组值为()。对一个算法的评价,不包括如下()方面的内容。栈和队列的共同点是()。设单链表中结点结构为(data,link).若想摘除结点*p的直接后继,则应执行下列哪一个操作()对线性表进行
- 串与普通的线性表相比较,它的特殊性体现在()。计算机内部数据处理基本的单位是()。顺序的存储结构
链式存储结构
数据元素是一个字符#
数据元素任意数据
数据元素#
数据项
数据库
- 且限于()。下列广义表用图来表示时,分支结点最多的是()。连接
求子串
模式匹配#
判断子串有序表;顺序存储结构#
有序表;链式存储结构
随机表;顺序存储结构
随机表;链式存储结构L=((x,(a,B),y))#
A=(s,
- 对于一个栈,给出输入项A,B,C,D,如果输入项序列为A,B,C,D,试给出全部可能的输出序列。在深度为7的满二叉树中,叶子结点的个数为()在一个顺序队列中,队首指针指向队首元素的()位置。出栈的可能序列:ABCDABDCACDBAC
- 阅读算法f2,并回答下列问题:(1)设队列Q=(1,3,5,2,4,6)。写出执行算法f2后的队列Q;(2)简述算法f2的功能。voidf2(Queue*Q){DataTypee;if(!QueueEmpty(Q)){e=DeQueue(Q);f2(Q);EnQueue(Q,e);}}
- 返回栈顶元素intisEmpty(SqStacks);判断栈空队列的ADT函数有:voidenQueue(Queueq,ElemTypee);元素e入队ElemTypedeQueue(Queueq);出队,100,30,55,55,50,14,30,14
- 已知栈的基本操作函数:intInitStack(SqStack*S);//构造空栈intStackEmpty(SqStack*S);//判断栈空intPush(SqStack*S,ElemTypee);//入栈intPop(SqStack*S,ElemType*e);//出栈函数conversion实现十进制数