树
1.任何一棵树:1.根 2.子树
2.节点的度:一个节点含有子树的个数称为该节点的度
3.叶节点或终端节点:度为0的节点
4.非终端节点或分支节点:度不为0的节点
6.树的度:一颗树中,最大节点的度称为树的度
5.兄弟节点:具有相同父亲的节点称为兄弟节点
7.树的高度或深度:树中节点的最大层次 一个节点最低层次为1 如果为0的话,空树就为-1,所以推荐一个根节点的最低层次为1
8.节点的祖孙:从根到该节点所经分支上的所有节点(根节点是所有节点的祖先)
注意!!!! 子树不能相交
二叉树
二叉树(它的子节点可以理解为计划生育)
二叉树不存在度大于2的节点
1.满二叉树:每一层都是满的
2.完全二叉树:假如有h层 ,前h-1层都是满的,最后一层要求从左到右是连续的
3.二叉树的值在数据位置中父子下标关系:
(1)parent的下标是(child-1)/2
(2)leftchild=parent*2+1
(3)rightchild=parent*2+2
(4)数组表示二叉树只适合满二叉树或者完全二叉树
4.大小堆:
(1)小根堆树中所有孩子都小于或等于孩子
(2)小根堆树中所有孩子都大于或等于孩子
二叉树遍历
速览:
前序遍历:根 左子树 右子树
中序遍历: 左子树 根 右子树
后序遍历: 左子树 右子树 根
层序遍历:一层一层从左向右遍历
1.二叉树的结构体
2.二叉树前序遍历
3.二叉树中序遍历
4.二叉树后序遍历
5.层序遍历
6.第k层的节点个数
7.寻找二叉树中值为x的位置
8.二叉树的节点个数
9.判断是否为完全二叉树
10.创建一个为x值的二叉树节点
目录