点击上方??,
)。
A.main()-S(1)-S(0)
B.S(0)-S(1)-main()
C.main()-S(0)-S(1)
D.S(1)-S(0)-main()
A查看答案
函数S(intn)是一个递归函数:①当实际参数小于等于零时则返回0,并终止递归;②当实际参数大于零时则递归调用S(n-1),并将S(n-1)的结果加上n作为返回值。程序从main()函数开始,首先调用main()函数;在main()函数中调用S(1)函数时,将main()函数的上下文保存到栈中,并进入函数S(1);由于函数S(1)的实际参数大于零,需要调用S(0),故将S(1)函数的上下文保存到栈中,进入S(0);在S(0)中,实际参数小于等于零,递归终止。
2先序序列为a,b,c,d的不同二叉树的个数是(
)。
A.13
B.14
C.15
D.16
B查看答案
二叉树的先序遍历定义为:若二叉树为空,则空操作;否则,访问根节点,然后先序遍历左子树,最后先序遍历右子树。本题中,结点a为二叉树的根节点,左右子树的先序遍历可能存在下面四种情况:①左子树为空,bcd为右子树;②b为左子树,cd为右子树;③bc为左子树,d为右子树;④bcd为左子树,右子树为空。然后将左右子树继续分解,如第①种情况的右子树先序遍历(bcd)可能有:a.左子树为空,右子树为cd;b.左子树为c,右子树为d;c.左子树为cd,右子树为空。按照这种方法继续分解左右子树,直到不能再分解为止,可得第①和④种情况各包含5种不同情况,第②和③种情况各包含2种情况,因此总共有14种不同的二叉树。
3下列选项给出的是从根分别到达两个叶节点路径上的权值序列,能属于同一棵哈夫曼树的是(
)。
A.24,10,5和24,10,7
B.24,10,5和24,12,7
C.24,10,10和24,14,11
D.24,10,5和24,14,6
D查看答案
哈夫曼树是带权路径长度最短的二叉树。由根节点出发到两个叶子节路径中,第二个被访问的两个结点的权值要么相等,要么和为根节点的权值,故B项错误。同理,通过第三个被访问的节点排除A项。C项,由两条路径可推出三个叶子节点的权值分别是:3、10和11,而根据哈夫曼树的定义可知,权值为3的节点应该和权值为10的结点结合,故C项错误。D项,反推出有四个叶子节点,权值分别为:5、5、6和8,满足哈夫曼树的条件。
4现在有一颗无重复关键字的平衡二叉树(AVL树),对其进行中序遍历可得到一个降序序列。下列关于该平衡二叉树的叙述中,正确的是(
)。
A.根节点的度一定为2
B.树中最小元素一定是叶节点
C.最后插入的元素一定是叶节点
D.树中最大元素一定是无左子树
D查看答案
二叉树的中序遍历定义是“若二叉树为空,则空操作;否则:①中序遍历左子树;②访问根节点;③中序遍历右子树”。A项错误,当树中仅有一个或者两个结点时,根节点的度就可能不为2;B项错误,树中最小元素是中序遍历时最后访问的节点,当没有右子树时,最后访问的节点是根节点;C项错误,当最后插入的元素破坏树的平衡后,树会进行调整,使其成为中间节点;D项正确,由中序遍历的特点可知,左子树的值大于根节点,所以最大元素一定没有左子树。
5设有向图G=(V,E),顶点集V={V0,V1,V2,V3},边集E={V0,V1,V0,V2,V0,V3,V1,V3},若从顶点V0开始对图进行深度优先遍历,则可能得到的不同遍历序列个数是(
)。
A.2
B.3
C.4
D.5
D查看答案
根据题意知有向图的结构如图所示。深度优先遍历的特点是尽可能先对纵深方向进行搜索,所以可能得到的不同遍历序列分别是:①V0→V2→V1→V3;②V0→V2→V3→V1;③V0→V1→V3→V2;④V0→V3→V2→V1;⑤V0→V3→V1→V2。
6暂缺
7下列选项中,不能构成折半查找中关键字比较序列的是( )。
A.,,,
B.,,,
C.,,,
D.,,,
A查看答案
折半查找的过程是:先确定待查找记录所在的范围,然后逐步缩小范围直到找到或找不到该记录为止。折半查找的关键字序列满足:对每一个关键字,其后面的所有关键字序列或者都小于等于该关键字或者都大于等于该关键字。A项错误,第三次比较的关键字为,说明待查关键字位于~间,所以第四次比较时不会遇到关键字。
.............
由于篇幅有限,更多考试备考资料历年真题视频网课参考教材全解考试重点大纲请登录方才学习网
扫码或长按