树与二叉树
1.list 底层数据结构为双向链表,支持快速增删
2.vector 底层数据结构为数组,支持快速随机访问
3.map 底层数据结构为红黑树,除了hashmap无序,其他实现结构有序,不重复
4.set 底层数据结构为红黑树,除了hashset无序,其他实现结构有序,不重复
一、二叉树的主要性质:
1、非空二叉树上叶子结点数等于双分支节点数加1
叶节点数 = 有两个分支的节点数+1
*二叉树中(总分支数 = 总结点数 -1) 这个结论适用于任何树。
2、二叉树的第 i 层上最多有2^(i-1)(i>=1)个节点。
3、高度(或深度)为k的二叉树最多有2^k - 1个节点(就是描述的前k项等比数列的求和公式)。
4、有n个结点的完全二叉树,对个节点从上至下,从左至右依次编号有如下关系:
5、6
二、二叉树遍历算法
前序、中序、后序遍历(根结点的访问在前、中、后)。层次遍历(需建立一个循环队列)
结论:前和中、中和后可唯一确定这颗二叉树