第5章总结

本章学习的内容为树

定义:树是一个n(n>=0)个结点的有序合集

结点:指树中的一个元素;

结点的度:指结点拥有的子树的个数,二叉树的度不大于2;

数的度:指树中的最大结点度数;

叶子:度为0的结点,也称为终端结点;

高度:叶子节点的高度为1,根节点高度最高;

层:根在第一层,以此类推;

 二叉树的定义:由一个结点和两颗互不相交、分别称为这个根的左子树和右子树的二叉树构成(递归定义)

 二叉树的性质:

1:二叉树的第i层上至多有2^(i-1)个结点

2:深度为k的二叉树,至多有2^k-1个结点

满二叉树:叶子节点一定要在最后一层,并且所有非叶子节点都存在左孩子和右孩子;

最特别的二叉树:完全二叉树:从左到右、从上到下构建的二叉树;

完全二叉树的性质:

1:结点 i 的子结点为2*i 和 2*i+1(前提是都小于总结点数)

2:结点 i 的父结点为 i/2 

 二叉树的遍历(要有递归的思想!!!):

1:先序遍历:根->左子树->右子树(先序)

2:中序遍历:左子树->根->右子树(中序)

3:后序遍历:左子树->右子树->根(后序)

这三种遍历方法只是访问结点的时机不同,访问结点的路径都是一样的,所以时间和空间复杂度皆为O(n)

posted @ 2020-05-31 23:44  贺思伟  阅读(130)  评论(0编辑  收藏  举报