二叉树概述

1、什么是二叉树

二叉树跟树有区别,最大的一点就是:树的度没有限制,而二叉树最多则不能超过2个度

二叉树由结点组成,结点包含的链接可以为空( null)或者指向其他结点,在二叉树中,每个结点只能有一个父结点(只有根节点例外), 而且每个结点都只有左右两个链接,分别指向他们自己的左子节点和右子节点。

2、二叉树类型:

完全二叉树:若设二叉树的高度为h,除第 h 层外,其它各层 (1~h-1) 的结点数都达到最大个数,第h层有叶子结点,并且叶子结点都是从左到右依次排布,这就是完全二叉树。

满二叉树:除最后一层无任何子节点外,每一层上的所有结点都有两个子结点(最后一层上的无子结点的结点为叶子结点)。也可以这样理解,除叶子结点外的所有结点均有两个子结点。节点数达到最大值。所有叶子结点必须在同一层上.

一颗树深度为h,最大层数为k,深度与最大层数相同,k=h;

  它的叶子数是: 2^h
  第k层的结点数是: 2^(k-1)
  总结点数是: 2^k-1 (2的k次方减一)
  总节点数一定是奇数。

平衡二叉树:平衡二叉树又被称为AVL树(区别于AVL算法),它是一棵二叉排序树,且具有以下性质:
它是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。


满二叉树肯定是完全二叉树,完全二叉树不一定是满二叉树

3、二叉树的遍历:

前序遍历:根节点-左子树-右子树
中序遍历:左子树-根节点-右子树
后序遍历:左子树-右子树-根节点
按层遍历:从根节点到下,一层层的从左到右依次遍历

关注微信公众号和今日头条,精彩文章持续更新中。。。。。




阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wufaliang003/article/details/55260168
个人分类: 数据结构
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭