常见的树结构有哪些?
● 二叉树:对于一棵树,任意节点最多包含两个子树;
● 满二叉树:对于一棵二叉树,每一层的节点数目都是最大值;
● 深度为$k$的满二叉树必然包含$2^k-1$个节点;
● 包含$n$个节点的满二叉树的深度为$log_2(n+1)$;
● 完全二叉树:对于一棵二叉树,最后一层的节点从左到右连续且紧密地排列,其他各层的节点数目都是最大值;
● 包含$n$个节点的完全二叉树的深度为$floor(log_2n)+1$;
● 平衡二叉树:对于一棵二叉树,任意节点的两棵子树的深度差不大于1;
● 二叉搜索树:对于一棵二叉树,任意节点的非空左子树的所有结点都小于其根节点的值,任意节点的非空右子树的所有结点都大于其根节点的值,并且其左右子树都是二叉搜索树。