-
c语言版数据结构中自定义结构通常用……………………………… ( C )
A、变量 B、 共同体 C、 结构体 D、类 -
算法分析的目的是( C )。
A.找出数据结构的合理性 B.研究算法中的输入和输出的关系
C.分析算法的效率以求改进 D.分析算法的易懂性和文档性 -
以下说法错误的是( D )。
A.完全二叉树上结点之间的父子关系可由它们编号之间的关系来表达
B.在三叉链表上,二叉树的求双亲操作很容易实现
C.在二叉链表上,求根以及求左、右孩子等操作很容易实现
D.在二叉链表上,求双亲操作的时间性能很好 -
将含有41个结点的完全二叉树从根结点开始编号,根为1号,后面按从上到下、从左到右的顺序对结点编号,那么编号为21的双亲结点编号为( A )。
A.10 B.11 C.41 D.20 -
设指针P指向双链表的某一结点,则双链表结构的对称性可用( C )式来刻画。
A.p->prior->nextp->next->next; B.p->prior->priorp->next-> prior;
C.p->prior->nextp->next-> prior; D.p->next->nextp->prior->prior; -
设深度为k的二叉树上只有度为0和度为2的结点,则这类二叉树上所含结点总数最少为( C )个。
A.k+1 B.2k C.2k-1 D.2k+1 -
一个栈的入栈序列是a,b,c,d,e,则栈的不可能输出序列( C )。
A.e,d,c,b,a B.d,e,c,b,a
C.d,c,e,a,b D.a,b,c,d,e -
设森林T中有4棵树,结点个数分别是n1、n2、n3、n4,当把森林T转换成一棵二叉树后,根结点的右子树上有( D )个结点。
A.n1 - 1 B.n1 C.n1 + n2 + n3 D.n2 + n3 + n4 -
从栈顶指针为Top的链栈中删除一个结点,并将被删结点的值保存到x中其操作步骤为( A )。
A.x=Top->data;Top=Top->next; B.Top=Top->next; x=Top->data;
C.x=Top; Top=Top->next; D.x=Top->data; -
n个结点的线索二叉树中的线索数目为( C )。
A.(n-1)个 B.n个 C.(n+1)个 D.(n+2)个 -
设串S1=‘ABCDEFG’,S2=‘PQRST’,函数StringConcat(X,Y)返回X和Y串的连接串,SubString(S,I,J)返回串S中从序号I的字符开始的J个字符组成的子串,StringLength(S)返回串S的长度,则StringConcat(SubString(S1,2,StringLength(S2)),SubString(S1,StringLength(S2),2))的结果串是( D )。
A.‘BCDEF’ B.‘BCDEFG’ C.‘BCDQRST’ D.‘BCDEFEF’ -
二维数组A[1…10,1…20]采用列序为主序方式存储,每个数据元素占1个存储单元,且A[1,1]的存储地址是200,则A[6,12]的存储地址是( B )。
A.317 B.315 C.313 D.730 -
设有两个无向图G =(V,E),G’ =(V’,E’),如果G’是G的生成树,则下列说法不正确的是( D)。
A.G’是G的子图 B.G’是G的极小子图,且V’ = V
C.G’是G的五环子图 D.G’是G的连通分量 -
将长度为n 的单链表接在长度为m的单链表之后的算法的时间复杂度为( C )
A、O(1) B、O(n) C、O(m) D、O(m+n) -
在一个有向图中,所有顶点的入度之和等于所有顶点的出度之和的( B )倍。
A.1/2 B.1 C.2 D.4 -
设图G采用邻接表存储,则拓扑排序算法的时间复杂度为( B )。
A.O(n) B.O(n + e) C.O(n * n) D.O(n * e)
a
d
c
e
b
17. 如图二叉排序树中,
当删除节点a时
为保持仍然是二叉排序树,
可将以下哪节点替换……………………………………………………………( D )
A、 b B、 c C、 d D、 e
18. 用某种排序方法对序列(25、84、21、47、15、27、68、35、20)进行排序,记录序列的变化情况如下:
25 84 21 47 15 27 68 35 20
20 15 21 25 47 27 68 35 84
15 20 21 25 35 27 47 68 84
15 20 21 25 27 35 47 68 84
则采用的排序方法是( C )。
A.直接选择排序 B.气泡排序 C.快速排序 D.2-路归并排序
- 具有24个记录的序列,采用气泡排序最少的比较次数为(B )。
A. 1 B. 23 C. 24 D. 529 - 若结点的存储地址与其关键字之间存在某种映射关系,则称这种存储结构为( D )
A.顺序存储结构 B.链式存储结构 C.索引存储结构 D.散列存储结构
二.填空题
-
设n为正数,试确定以下程序段中前面加@的语句的频度: n^2
k=0
for (i=1,i<=n;i++)
for(j=i;j<=n;j++)
@k++ -
常见时间复杂度的量级有:常数阶O( 1 )、对数阶O( log2 n )、线性阶O( n )、平方阶O( n^2 )和指数阶O( 2^n )。通常认为,具有指数阶量级的算法是 最复杂 的。
-
具有100个结点的完全二叉树的深度是 7 。
-
设有30个值,用它们构造一棵哈夫曼树,则该哈夫曼树中共有 59 个结点。
-
假设以S和X分别表示入栈和出栈操作,则对输入序列a,b,c,d,e进行一系列栈操作SSXSXSSXXXX之后,得到的输出序列为 bceda 。
-
设有一个空栈,现在输入序列为1,2,3,4,5,经过push,push,pop,push,pop,push,后栈顶指针所指元素是 4 。
-
设无向图G中顶点数为n,则图G最少有 0 条边,最多有 n(n-1)/2 条边。
若G为有向图,有n个顶点,则图至少有 0 条边,最多有 n(n-1) 条边。 -
折半查找方法仅适用于,这样的表:表中的记录必须 有序 ,其存储结构必须是 顺序存储 。
-
已知广义表LS=(a,(b,c,d),c),运用GetHead和GetTail函数取出原子d的运算过程为 。gettail(gettail(gethead(gethead(gettail(LS)))))
-
在插入排序和选择排序中,若初始数据基本正序,则选用 插入排序 ,若初始数据基本反序,则选用 选择排序。