先访问右子树,然后访问左子树
而不是
1 + 2 + 4 + 8 + 16 + 24 + 242
虽然是有8个叶子节点,但是第六层,在满足做多节点的情况下,一定是满的.
二叉树转为森林:
森林转二叉树:
对于二叉树中的D和E,原来是父子节点关系,现在是兄弟节点关系
对于二叉树中的父子关系,森林中的父节点之间是兄弟关系,这样的点
二叉树的线索化(前序,中序,后序),就是将空余指针,指向前驱或者后继.如狗没有前驱,就指向NULL
正确答案:A
对于A:哈夫曼树不一定是完全二叉树,可以通过举例法来进行证明
对于B:由于哈夫曼树的构造过程,以及可以通过举例法(构造1,2,3,4,5,6的哈夫曼树),发现在构造时,都是两个节点合并成一个节点,整颗树,要么是度为2,要么是度为0,不可能出现度为1
对于C:由于构造哈夫曼树的第一步就是选择两个最小的节点组合成树,所以最小的节点一定是兄弟节点
对于D:可以通过举例法来进行证明(1,2,1000,1001)
1)将N个节点当做N棵树,构成森林
2)从N个节点中选择两个最小的节点构成一棵树,将新节点改变为两节点之和,然后继续从改变后的序列中选择最小的两个构成树
3)注意:构成树的时候,左节点要小于右节点
如果形成的树不是连续的在一棵树上进行增加,那么可以放在树的左侧,也可以放在树的右侧
C
C
本题通过列举法来解题 二叉树遍历的规律:
前序遍历与后序遍历序列相反的二叉树是高度等于节点数的二叉树,或者说只有一个叶子节点的二叉树.或者说分支节点之多只有左侧子女或者右子女的二叉树.
中序遍历的第一个节点是二叉树最左侧的节点
1,二叉树先序遍历序列第一个节点一定是根节点
2,二叉树的先序遍历第二个节点,要么是左子树根节点,要么是右子树根节点(此时根节点的左子树必须为空,其余的所有点挂载右子树节点上)
3,二叉树的后序遍历的最后一个节点一定是根节点
4,二叉树的倒数第二个节点要么是右子树,要么是左子树根节点(此时右子树为空,其余的所有点挂在右子树节点上)
5,如果先序遍历和后序遍历序列某部分序列相反,如ab与ba,则说明ab与ba一定在两个层次上