假设用带头结点的单循环链表表示线性表,单链表的类型定义如下:typedef struct node {int data;struct node*next;}LinkNode,*LinkList;编写程序,求头指针为head的单循环链表中da
答案是:教师释疑:
return|0
已知二叉树的定义如下:typedef struct node{int data;struct node *lchild, *rchild;}*Bitptr;编写递归算法求二叉树的高度。函数原型为:int f34(Bitptr
答案是:教师释疑:
!t|f34(t->lchild)|f34(r->child)
已知二叉树采用二叉链表存储,其结点结构定义如下: typedef struct Node{ ElmType data; struct Node *lchild,*rchild; }*BiTree; 请编写递归函数
答案是:教师释疑:
T->lchild==null|T->rchild==null
二叉排序树的类型定义如下:typedef struct BSTNode {∥ 二叉排序树的结点结构int data; ∥数据域struct BSTNode *lchild, *rchild; ∥左、右孩子指针}BSTNode
答案是:教师释疑:
T->lchild|T->rchild
假设线性表采用顺序存储结构,其类型定义如下:#define ListSize 100typedef struct {int data[ListSize];int length;} SeqList, *Table;编写算法,将
答案是:教师释疑:
L->length
若需高效地查询多关键字文件,可以采用的文件组织方式为___________。
答案是:教师释疑:
倒排文件
如果要为文件中的每个记录建立一个索引项,则这样建立的索引表称为___________。
答案是:教师释疑:
稠密索引
ISAM文件系统中采用多级索引的目的是___________。
答案是:教师释疑:
提高检索效率
不定长文件指的是文件的____________大小不固定。
答案是:教师释疑:
记录
已知一组待排记录的关键字序列为(16,12,18,60,15,36,14,18,25,85),用堆排序方法建小根堆,请给出初始建堆后的序列12,15,14, ,16,36,18,60,25,85 。
答案是:教师释疑:
18
不稳定的排序算法有选择排序、 、希尔排序、堆排序,稳定的排序算法有冒泡排序、 、归并排序和基数排序是稳定的排序算法。
答案是:教师释疑:
快速排序,插入排序
下面程序实现插入排序算法。
typedef struct{
int key;
Info otherinfo;
}SeqList;
void InsertSort(SeqList R[],int n)
答案是:教师释疑:
(1)x=R[i](2)R[mi].key=x.key(3)R[i-j]=R[i-j-1]
已知一组待排记录的关键字序列为(16,12,18,60,15,36,14,18,25,85),用堆排序方法建小根堆,请给出初始建堆后的序列。
答案是:教师释疑:
12,15,14,18,16,36,18,60,25,85
已知待排记录的关键字序列为{25,96,11,63,57,78,44},请回答下列问题:
(1)画出堆排序的初始堆(大根堆);
(2)画出第二次重建堆之后的堆。
答案是:教师释疑:
(1){96,63,78,25,57,11,44} (也可以画出对应的堆形式)(2){63,57,44,25,11,78,96}(也可以画出对应的堆形式)
对关键字序列(72,87,61,23,94,16,05,58)进行堆排序,使之按关键字递减次序排列。请写出排序过程中得到的初始堆和前三趟的序列状态。
答案是:教师释疑:
初始堆:(05,23,16,58,94,72,61,87)第1趟:(16,23,61,58,94,72,87,05)第2趟:(23,58,61,87,94,72,16,05)第3趟:(58,72,61,87,94,23,16,05)
在关键字序列(07,12,15,18,27,32,41,92)中用二分查找法查找和给定值92相等的关键字,请写出查找过程中依次和给定值“92”比较的关键字为18,_____,41,92。
答案是:教师释疑:
32
下面程序实现二分查找算法。
Typedef struct{
KeyType key;
InfoType otherinfo;
}SeqList[N+1];
int BinSearch(SeqL
答案是:教师释疑:
(1)low<=high (2)R[mid].key==K (3)low=mid+1
已知关键字序列为(56,23,41,79,38,62,18),用散列函数H(key)=key%11将其散列到散列表HT[0..10]中,采用线性探测法处理冲突。请回答下列问题:
(1)画出散列存储后的散列表:
(2)求在等概率情况下查找
答案是:教师释疑:
(1)(2)11/7
若无向图G中有n个顶点m条边,采用邻接矩阵存储,则该矩阵中非0元素的个数为__;
答案是:教师释疑:
2m
若采用邻接矩阵结构存储具有n个顶点的图,则对该图进行广度优先遍历的算法时间复杂度为________。n个顶点且含有环路的无向连通图中,至少含有_______ 条边。
答案是:教师释疑:
O(n*n),n
在有向图中,以顶点v为终点的边的数目称为v的__;含n个顶点的无向连通图中至少含有___条边。
答案是:教师释疑:
入度,n-1
求最小生成树的克鲁斯卡尔(Kruskal)算法耗用的时间与图中____的数目正相关;一个有n个顶点的无向连通图,最少有____条边;
答案是:教师释疑:
边;n-1
若用邻接矩阵表示有向图,则顶点i的入度等于矩阵中_____。
答案是:教师释疑:
第i列非∞元素个数
若采用邻接矩阵结构存储具有n个顶点的图,则对该图进行广度优先遍历的算法时间复杂度为__;n个顶点且含有环路的无向连通图中,至少含有__条边;
答案是:教师释疑:
O(n*n);n
已知有向图G的定义如下:
G=(V,E)
V={a,b,c,d,e}
E={, ,,,,,}
(1)画出G的图形;
(2)
答案是:教师释疑:
(1)(2)abecd;aebcd;eabcd
由森林转换得到的对应二叉树如图所示,写出原森林中第三棵树的前序序列和后序序列
A
/ \
/
答案是:教师释疑:
前序序列:GHIJ后序序列:HJIG
请根据下面哈夫曼树进行译码,写出原来的电文
由字符集{s,t,a,e,l}及其在电文中出现的频度构建的哈夫曼树如图所示,已知某段电文的哈夫曼编码为111000010100,请根据该哈夫曼树进行译码,写出原来的电文。
答案是:教师释疑:
eatst
假设二叉树的RNL遍历算法定义如下:若二叉树非空,则依次执行如下操作:
(1)遍历右子树
(2)访问根节点;
(3)遍历左子树
已知一棵二叉树如图所示,请给出其RNL遍历的结果序列。
A
答案是:教师释疑:
GCFABD
已知一棵完全二叉树中共有768结点,则该树中共有 _____个叶子结点。
答案是:教师释疑:
384
假设用表示树的边(其中x是y的双亲),已知一棵树的边集为{,,,,,},该树的度是_____ 。
答案是:教师释疑:
3
在n个结点的线索二叉链表中,有___个线索指针;已知完全二叉树T的第5层只有7个结点,则该树共有___个叶子结点;
答案是:教师释疑:
n+1,11
二叉树的四种遍历方法有___、___、___和___。
答案是:教师释疑:
中序遍历、先序遍历、后序遍历、层次遍历
假设一棵完全二叉树含1000个结点,则其中度为2的结点数为___;在含有3个结点a,b,c的二叉树中,前序序列为abc且后序序列为cba的二叉树有___棵;
答案是:教师释疑:
499,2
假设通信电文使用的字符集为{a,b,c,d,e,f,g},字符的哈夫曼编码依次为:0110,10,110,111,00,0111和010。
(1)请根据哈夫曼编码画出此哈夫曼树,并在叶子结点中标注相应字符;
(2)若这些字符在电文中出现
答案是:教师释疑:
253
答案是:教师释疑:
(1)a(2)b,d,f,h,i,j,k(3)a,c,g(4)i(5)4
广义表L=(a,(b,( )))的深度为__。广义表G=(a,b,(c,d,(e,f)),G)的长度为__。
答案是:教师释疑:
3,4
广义表的“深度”是指一个广义表的“深度”是指表展开后所含括号的 ___________。
答案是:教师释疑:
层数
广义表和线性表的区别与联系是:广义表是 的推广;线性表的元素仅限于原子项,若允许其元素具有自身结构,即构成广义表。
答案是:教师释疑:
线性表
已知广义表如下:A=(B,y) B=(x,L) L=(a,b)
要求:写出下列操作的结果
tail(A)=__.
head(B)=__。
答案是:教师释疑:
(y),x
假设一个10阶的下三角矩阵A按列优顺序压缩存储在一维数组C中,则C数组的大小应为___。假设以列优先顺序存储二维数组A[5][8],其中元素A[0][0]的存储地址为LOC(a00),且每个元素占4个存储单元,则数组元素A[i][j]的存储
答案是:教师释疑:
55,LOC(a00)+4*(5*j+i)
假设一个6阶的下三角矩阵B按列优先顺序压缩存储在一维数组A中,其中A[0]存储矩阵的第一个元素b11,则A[14]存储的元素是________。
答案是:教师释疑:
b63
假设以列优先顺序存储二维数组A[5][8],其中元素A[0][0]的存储地址为LOC(a00),且每个元素占4个存储单元,则数组元素A[i][j]的存储地址为___________。
答案是:教师释疑:
LOC(a00)+4*(5*j+i)
设二维数组A5X6的每个元素占4个字节,已知LOC(a00)=1000,A共占________个字节?A的终端结点a45的起始地址为__________?按行和按列优先存储时,a25的起始地址分别为___________和_________
答案是:教师释疑:
120,1116,1068,1108
阅读下列算法,并回答问题:
(1)假设数组L[8]={3,0,5,1,6,4,2,7},写出执行函数调用f32(L,8)后的L;
(2)写出上述函数调用过程中进行元素交换操作的总次数。
void f32(int R[],int n
答案是:教师释疑:
(1)L[8]={0,1,2,3,4,5,6,7}(2)共进行5次元素交换
已知稀疏矩阵采用带行表的三元组表表示,其形式说明如下:
#define MaxRow 100 //稀疏矩阵的最大行数
typedef struct {
int i,j,v; //行号、列号、元素值
答案是:教师释疑:
①it②&R->data[i].i③&R->data[i].j④k++
特殊矩阵和稀疏矩阵哪一种采用压缩存储会失去随机存取的功能?为什么?
答案是:教师释疑:
因稀疏矩阵的非0元素的分布是没有规律的,其压缩存储是采用三元组表方式。所以稀疏矩阵压缩后会失去随机存取的功能。
字符串“sgabacbadfgbacst” 中存在有 ____个与字符串“ba”相同的子串。在串S=“structure”中,以t为首字符的子串有 ________个。
答案是:教师释疑:
3,12
在串匹配中,一般将主串称为目标串,将子串称为_______。链串的结点大小定义为结点的_________中存放的字符个数。
答案是:教师释疑:
模式串,数据元素
已知substr(s,i,len)函数的功能是返回串s中第i个字符开始长度为len的子串,strlen(s)函数的功能是返回串s的长度。若s=″ABCDEFGHIJK″,t=″ABCD″,执行运算substr(s,strlen(t), st
答案是:教师释疑:
“EFGH”
串是一种特殊的线性表,其特殊性体现在它的数据元素是 ,另外串的基本操作和线性表有很多的区别,在串的基本操作中,通常以“ ”作为操作对象。
答案是:教师释疑:
字符,串的整体
空格串是指 空格字符(ASCII码为20H)组成的串,而空串是 任何字符的串,其长度为0。
答案是:教师释疑:
一个或多个,不含
阅读下列程序,并回答问题:
#include
substr(char*t,char*s,int pos,int len)
{ while(len>0&&*s)
{ *t=*(s+pos-l);
答案是:教师释疑:
(1)"gnirtS" (2)将字符串s中的字符倒置。
设栈S和队列Q的初始状态皆为空,元素a1,a2,a3,a4,a5和a6依次通过栈S,元素出栈后即进入队列Q,若6个元素出队列的顺序是a3,a5,a4,a6,a2,a1则栈S至少应该容纳_______个元素?
答案是:教师释疑:
4
算法f31的功能是清空带头结点的链队列Q。请在空缺处填入合适的内容,使其成为一个完整的算法。
typedef struct node{
DataType data;
struct node *next;
}Qu
答案是:教师释疑:
(1)Q->front->next(2)Q->front->next(3)Q->front
阅读下列算法,并回答问题:
(1)Q、Q1和Q2都是队列结构,设队列Q=(1,0,-5,2,-4,-6,9),其中1为队头元素,写出执行f31 (&Q,&Q1,&Q2)之后队列Q、Q1和Q2的状态;
(2)简述算法f31的功能。
答案是:教师释疑:
(1)Q=() Q1=(1,0,2,9) Q2=(-5,-4,-6) (2)将队列Q的元素依次出队,并将正值元素及0元素入队到Q1,负值元素入队到Q2
假设以数组seqn[m]存放循环队列的元素,设变量rear和quelen分别指示循环队列中队尾元素的位置和元素的个数。
(1)写出队满的条件表达式;
(2)写出队空的条件表达式;
(3)设m=40,rear=13,quelen=19,
答案是:教师释疑:
(1)quelen==m(2)quelen==0(3)35(4)(rear-quelen+1+m)%m
简述队列和栈这两种数据类型的相同点和差异点。
答案是:教师释疑:
栈和队列都是一种运算受限的线性表;栈其限制是仅允许在表的一端进行插入和删除运算,队列其限制是仅允许在表的一端进行插入,而在表的另一端进行删除。
若进栈序列为a,b,c,且进栈和出栈可以穿插进行,则可能出现____个不同的出栈序列。
答案是:教师释疑:
3
假设为循环队列分配的向量空间为Q[20],若队列的长度和队头指针值分别为13和17,则当前尾指针的值为______。
答案是:教师释疑:
10
已知循环队列的存储空间大小为m,队头指针front指向队头元素,队尾指针rear指向队尾元素的下一个位置,则在队列不满的情况下,队列的长度是___。
答案是:教师释疑:
(rear-front+m)%m
栈下溢是指在____时进行出栈操作。
答案是:教师释疑:
栈空
栈顶的位置是随着______ 操作而变化的。设栈S的初始状态为空,若元素a、b、c、d、e、f依次进栈,得到的出栈序列是b、d、c、f、e、a,则栈S的容量至少是___。
答案是:教师释疑:
进栈和退栈,3
假设循环队列的元素存储空间大小为m,队头指针f指向队头元素,队尾指针r指向队尾元素的下一个位置,则在少用一个元素空间的前提下,表示“队满”的条件是___。
答案是:教师释疑:
f==(r+1)%m
栈和线性表的差别为线性表是具有 的数据元素的一个有限序列。栈是限定仅在 进行插入或删除操作的线性表。
答案是:教师释疑:
相同特性,表尾
设栈S=(1,2,3,4,5,6,7),其中7为栈顶元素。请写出调用algo(&s)后栈S的状态。
void algo(Stack *S)
{
int i=0;
Queue Q; Stack T;
答案是:教师释疑:
s=(6,4,2,1,3,5,7)
链栈中为何不设置头结点?
答案是:教师释疑:
因为链栈是运算受限的单链表,其插入和删除操作仅限制在表头位置上进行,由于只能在链表头部进行操作,故链栈不需设置头结点。
要在[0..n-l]的向量空间中建立两个栈stackl和stack2,请回答:
(1)应该如何设计这两个栈才能充分利用整个向量空间?
(2)若stackl的栈顶指针为topl,stack2的栈顶指针为top2,如果需要充分利用整个向量空
答案是:教师释疑:
(1)采用双向栈的形式,stack1的栈底设置在从数组下标为0的元素处,stack2的栈底设置在数组下标为n-1的元素处(2)top1=-1top2=ntop1-1=top2或top1=0top2=n-1top1-1=top2
在一个长度为100的顺序表中删除第10个元素时,需要移动 个元素。
答案是:教师释疑:
90
如果需要对线性表频繁进行_____操作,则不宜采用顺序存储结构。长度为n的线性表采用单链表结构存储时,在等概率情况下查找第i个元素的时间复杂度是___。
答案是:教师释疑:
插入或删除,O(n)
将两个长度分别为m和n的递增有序单链表,归并成一个按元素递减有序的单链表,可能达到的最好的时间复杂度是 _____。在一个长度为n的单链表L中,删除链表中*p的前驱结点的时间复杂度为_________。
答案是:教师释疑:
O(m+n),O(n)
在一个带头结点的单循环链表中,p指向尾结点的直接前驱,则指向头结点的指针head可用p表示为head=___。
答案是:教师释疑:
p->next->next
输入线性表的n个元素建立带头结点的单链表,其时间复杂度为___________。在双向循环链表中插入一个新的结点时,应修改_________个指针域的值。
答案是:教师释疑:
O(n),4
在等概率情况下,在长度为n的顺序表中插入和删除一个结点需平均移动___________个结点和___________个结点,具体的移动次数取决于___________和___________。
答案是:教师释疑:
n/2,(n-1)/2,顺序表的长度n,插入或删除的位置i。i越接近n则所需移动的结点数越少。
已知顺序表的表结构定义如下:
#define MAXLEN 100
typedef int KeyType;
typedef struct {
KeyType key;
InfoType otherinfo;
答案是:教师释疑:
(1)-1,3 (2)二分查找给定的关键字,若存在则返回关键字在表中的位置(或下标),否则返回-1。
阅读下列算法,并回答下列问题:
(1)该算法采用何种策略进行排序?
(2)算法中R[n+1]的作用是什么?
Typedef struct {
KeyType key;
infoType otherinfo;
} no
答案是:教师释疑:
(1)插入排序(2)作为监视哨(或哨兵)
阅读下列程序
void f32(int A[],int n)
{
int i,j,m=l,t;
for (i=0; i
答案是:教师释疑:
(34 26 15 89 42)(26 15 34 42 89)(15 26 34 42 89)
已知单链表的结点结构为 data next
下列算法对带头结点的单链表L进行简单选择 排序,使得L中的元素按值从小到大排列,请在空缺处填入合适的内容,使其成为完整的算法。
void SelectSort(LinkedL
答案是:教师释疑:
(1)L—>next(2)q->datadata(3)min!=p(4)p=p->next
阅读下列算法,并回答问题:
(1)设顺序表L=(3,7,11,14,20,51),写出执行f30(&L,15)之后的L;
(2)设顺序表L=(4,7,10,14,20,51),写出执行f30(&L,10)之后的L;
(3)简述算法的功
答案是:教师释疑:
(1)(3,7,11,14,15,20,51)(2))(4,7,14,20,5)(3) 当非递减顺序表中存在x时,从表中删除该元素,否则将x插入到顺序表的相应位置
已知用有序链表存储整数集合的元素。阅读算法f30,并回答下列问题:
(1)写出执行f30(a,b)的返回值,其中a和b分别为指向存储集合{2,4,5,7,9,12}和{2,4,5,7,9}的链表的头指针;
(2)简述算法f30的功能
答案是:教师释疑:
(1)0(2)判断两个有序整数集合的链表是否相同(3)O(n)
已知线性表的存储结构为顺序表,阅读下列算法,并回答问题:
(1)设线性表L=(21,-7,-8,19,0,-11,34,30,-10),写出执行f30(&L)后的L状态;
(2)简述算法f30的功能。
void f30 (Seq
答案是:教师释疑:
(1)L=(21,19,0,34,30)(2)删除顺序表中的复值元素
下列程序的功能是将所有小于0的元素移到全部大于等于0的元素之前。例如,有7个整数的原始序列为(x,x,-x,-x,x,x,-x),变换后数组中保存的序列是(-x,-x,-x,x,x,x,x)。请在程序处填入合适的内容,使其成为完整的算法。
答案是:教师释疑:
(1)0(2)m+1(3)k+1(4)temp(5)m+1
以下函数中,h是带头结点的双向循环链表的头指针。
(1)说明程序的功能;
(2)当链表中结点数分别为1和6(不包括头结点)时,请写出程序中while循环体的执行次数。
int f(DListNode *h)
{
答案是:教师释疑:
(1)判断链表中的数据是否对称 (2)是否对称|结点数为1时执行0次,结点数为6时执行3次
数据的逻辑结构在计算机存储器内的表示,称为数据的____________。当问题的规模n趋向无穷大时,算法执行时间T(n)的数量级被称为算法的________。
答案是:教师释疑:
存储结构,渐进时间复杂度
估算算法时间复杂度时考虑的问题规模通常是指算法求解问题的_________。若一个算法中的语句频度之和为T(n)=3720n+4nlogn,则算法的时间复杂度为________。
答案是:教师释疑:
n的函数,O(nlogn)
如果某算法对于规模为n的问题的时间耗费为T(n)=3n3,在一台计算机上运行时间为t秒,则在另一台运行速度是其64倍的机器上,用同样的时间能解决的问题规模是原问题规模的________倍。称算法的时间复杂度为O(f(n)),其含义是指算法的
答案是:教师释疑:
4,f(n)
链式存储结构的特点是借助_______来表示数据元素之间的逻辑关系。数据的存储结构是其逻辑结构在计算机中的___________。
答案是:教师释疑:
指针,反映
一般情况下,算法中基本操作重复执行的的 某个函数f(n),算法的时间量度记作:T(n)=O(f(n))它表示随问题规模n的增大,算法执行时间的增长率和f(n)的增长率相同,称作算法的渐进时间复杂度,简称时间复
答案是:教师释疑:
问题规模n
算法的特征是什么?
答案是:教师释疑:
(1)有限性:算法必须在有限的步骤之后结束;(2)确定性:算法的每一步都是确定的定义,无二义性;(3)输入:一个算法可接受零个或多个输入;(4)输出:一个算法有至少一个或多个输出;(5)有效性:算法由可实现的基本指令组成。
便于进行布尔查询的文件组织方式是( )。
A.顺序文件
B.索引文件
C.散列文件
D.多关键字文件
答案是:参考答案:D
散列文件也称为()。
A.顺序文件
B.索引文件
C.直接存取文件
D.间接存取文件
答案是:参考答案:C
ISAM文件和VSAM文件的区别之一是( )
A.前者是索引顺序文件,后者是索引非顺序文件
B.前者只能进行顺序存取,后者只能进行随机存取
C.前者建立静态索引结构,后者建立动态索引结构
D.前者
答案是:参考答案:C
VSAM文件的索引结构为( )
A.B+树
B.二叉排序树
C.B-树
D.最优二叉树
答案是:参考答案:A
在VSAM文件的控制区间中,记录的存储方式为( )
A.无序顺序
B.有序顺序
C.无序链接
D.有序链接
答案是:参考答案:B
数据库文件是由大量带有结构的( )
A.记录组成的集合
B.字符组成的集合
C.数据项组成的集合
D.数据结构组成的集合
答案是:参考答案:A
稀疏索引是指在文件的索引表中( )
A.为每个字段设一个索引项
B.为每个记录设一个索引项
C.为每组字段设一个索引项
D.为每组记录设一个索引项
答案是:参考答案:D
对关键字序列(56,23,78,92,88,67,19,34)进行增量为3的一趟希尔排序的结果为( )
A.(19,23,56,34,78,67,88,92)
B.(23,56,78,66,88,92,19,34)
答案是:参考答案:D
已知用某种排序方法对关键字序列(51,35,93,24,13,68,56,42,77)进行排序时,前两趟排序的结果为 (35,51,24,13,68,56,42,77,93) (35,24,13,51,56,42,68,77,93) 所采用
答案是:参考答案:B
在最好和最坏情况下的时间复杂度均为O(nlogn)且稳定的排序方法是( )
A.快速排序
B.堆排序
C.归并排序
D.基数排序
答案是:参考答案:C
对下列关键字序列进行快速排序时,所需进行比较次数最少的是( )
A.(1,2,3,4,5,6,7,8)
B.(8,7,6,5,4,3,2,1)
C.(4,3,8,6,1,7,5,2)
D.(2
答案是:参考答案:A
对关键字序列(5,1,4,3,7,2,8,6)进行快速排序时,以第一个元素5为基准的一次划分的结果为( )
A.(1,2,3,4,5,6,7,8)
B.(1,4,3,2,5,7,8,6)
C.(2,1,
答案是:参考答案:C
下列序列中,不构成堆的是( )
A.(1,2,5,3,4,6,7,8,9,10)
B.(10,5,8,4,2,6,7,1,3)
C.(10,9,8,7,3,5,4,6,2)
D.(1,2,3,
答案是:参考答案:D
在有序表(12,24,36,48,60,72,84)中二分查找关键字72时所需进行的关键字比较次数为( ) 。
A.2
B.3
C.1
D.4
答案是:参考答案:A
设有一组关键字(19, 14, 23, 1,6,20, 4,27, 5,11, 10, 9),用散列函数H(key)=key%13构造散列表,用拉链法解决冲突,散列地址为1的链中记录个数为()。
A.1
B.2
答案是:参考答案:C
对表长为n的顺序表进行顺序查找,在查找概率相等的情况下,查找成功的平均查找长度为( )
A.(n-1)/2
B.n/2
C.(n+1)/2
D.n
答案是:参考答案:C
对于哈希函数H(key)=key%13,被称为同义词的关键字是( )
A.35和41
B.23和39
C.15和44
D.25和51
答案是:参考答案:D
下列查找算法中,平均查找长度与元素个数n不直接相关的查找方法是( )
A.分块查找
B.顺序查找
C.二分查找
D.散列查找
答案是:参考答案:D
主关键字能唯一标识( )
A.一个记录
B.一组记录
C.一个类型
D.一个文件
答案是:参考答案:A
在含n个顶点和e条边的无向图的邻接矩阵中,零元素的个数为()
A.e
B.2e
C.n2-e
D.n2-2e
答案是:参考答案:D
图的邻接矩阵表示法适用于表示( )
A.无向图
B.有向图
C.稠密图
D.稀疏图
答案是:参考答案:C
在一个具有n个顶点的有向图中,所有顶点的出度之和为Dout ,则所有顶点的入度之和为( )
A.Dout
B.Dout-1
C.Dout+1
D.n
答案是:参考答案:A
若用邻接矩阵表示带权有向图,则顶点i 的入度等于矩阵中( )
A.第i 行非∞元素之和
B.第i 列非∞元素之和
C.第i 行非∞元素个数
D.第i 列非∞元素个数
答案是:参考答案:D
已知有向图G=(V,E),其中V={V1,V2,V3,V4},E={,,,,},图G的拓扑序列是( )。
A.V1,V2,V3,V4
B.V1,V3,V2,V4
C.V1,V3,V4,V2
D.V
答案是:参考答案:A
在图G中求两个结点之间的最短路径可以采用的算法是()。
A.迪杰斯特拉(Dijkstra)算法
B.克鲁斯卡尔(Kruskal)算法
C.普里姆(Prim)算法
D.广度优先遍历(BFS)算法
答案是:参考答案:A
若一棵二叉树的前序遍历序列与后序遍历序列相同,则该二叉树可能的形状是( )
A.树中没有度为2的结点
B.树中只有一个根结点
C.树中非叶结点均只有左子树
D.树中非叶结点均只有右子树
答案是:参考答案:B
在一棵度为3的树中,度为3的结点个数为2,度为2 的结点个数为1,则度为0的结点个数为()
A.4
B.5
C.6
D.7
答案是:参考答案:C
下列编码中属前缀码的是( )
A.{1,01,000,001}
B.{1,01,011,010}
C.{0,10,110,11}
D.{0,1,00,11}
答案是:参考答案:A
若采用孩子兄弟链表作为树的存储结构,则树的后序遍历应采用二叉树的( )
A.层次遍历算法
B.前序遍历算法
C.中序遍历算法
D.后序遍历算法
答案是:参考答案:C
下列陈述中正确的是( )
A.二叉树是度为2的有序树
B.二叉树中结点只有一个孩子时无左右之分
C.二叉树中必有度为2的结点
D.二叉树中最多只有两棵子树,并且有左右之分
答案是:参考答案:D
若一棵二叉树有11个叶子结点,则该二叉树中度为2的结点个数是( )
A.10
B.11
C.12
D.不确定的
答案是:参考答案:D
允许结点共享的广义表称为( )。
A.纯表
B.线性表
C.递归表
D.再入表
答案是:参考答案:D
目前为:
1/2
页
首页 上页 下页 尾页