以二叉链表作为二叉树的存储结构,编写以下算法:
(1)统计二叉树的叶结点个数。
(2)设计二叉树的双序遍历算法(双序遍历是指对于二叉树的每一个结点来说,先访问这个结点,再按双序遍历它的左子树,然后再一次访问这个结点,接下来按双序遍历它的右子树)。
(3)计算二叉树最大的宽度(二叉树的最大宽度是指二叉树所有层中结点个数的最大值)。
(4)用按层次顺序遍历二叉树的方法,统计树中具有度为1的结点数目。
(5)求任意二叉树中第一条最长的路径长度,并输出此路径上各结点的值。
(6)输出二叉树中从每个叶子结点到根结点的路径。
A.基于键值对的集合类型,key不能自由分配,但是可以通过迭代器对集合元素进行遍历
B.基于键值对结构的集合类型,可以对集合元素排序和遍历
C.添加元素时,集合会自动添加索引,通过索引可以遍历集合
D.集合元素采用key-value结构存储,通过Iterator对key进行遍历,可以取得value
适于对动态查找表进行高效率查找的组织结构是【】
A.有序表
B.分块有序表
C.二叉排序树
D.线性链表
设有一个关键码的输入序列(55,31,11,37,46,73,63,02,07):
(1)从空树开始构造平衡二叉搜索树,画出每加入一个新结点时二叉树的形态。若发生不平衡,指明需进行的平衡旋转的类型及平衡旋转的结果
(2)计算该平衡二叉搜索树在等概率下的搜索成功的平均搜索长度和搜索不成功的平均搜索长度。