二叉树
二叉树是每个节点最多有两个子树(度最大为2)的树结构,子树分为“左子树”和“右子树”,顺序不能颠倒。
二叉搜索树:树中的任何节点,如果左子树不为空,那么该节点的值大于左子树的值,如果右子树不为空,那么该节点的值小于右子树的值。
满二叉树:在一颗二叉树中,除了叶子节点,每个节点都有两个子节点。
完全二叉树:从根节点到倒数第二层需要实现满二叉树,最后一层可以不完全填充,叶子节点向左对齐,满二叉树一定是完全二叉树,但是完全二叉树并不一定是满二叉树。
在二叉树的第k层上,最多有2k-1个结点(k≥1)
深度为k的二叉树,最多有2k-1个结点(k≥1)
一颗二叉树的叶子节点数为N0,度为2的节点数为N2,那么N0=N2+1
N0=N2+1 这个等式可以这么理解:
二叉树总共有n个节点,二叉树中每个节点的度只有三种可能性:0、1、2,所以n=N0+N1+N2
因为总共n个节点,所有共计有n-1条边
度为2的节点会延申出两条边,度为1的节点会延申出一条边,所以n-1=2*N2+1*N1
两个等式合并一下,所以:N0+N1+N2 - 1=2*N2+1*N1
最终得到:N0=N2 + 1
浙公网安备 33010602011771号