二叉树概述

简介: 二叉树概述

一、 什么是二叉树


二叉树是n个有限元素的集合,该集合或者为空、或者由一个称为根(root)的元素及两个不相交的、被分别称为左子树和右子树的二叉树组成,是有序树。当集合为空时,称该二叉树为空二叉树。在二叉树中,一个元素也称作一个结点 。

来源:百度百科_二叉树

简单来说,二叉树就是每个结点最多有两个子树的树形结构,只要满足两个性质就可以称为二叉树:

  1. 本身是一棵有序的树
  2. 树中包含的各个结点的度不能超过2,只能是0、1或者2


image.png

二、 二叉树的性质


  1. 根节点的层数为1,一棵非空二叉树的第 i 层最多有2i-1 个结点
  2. 根节点的层数为1,一棵深度为 k 的二叉树最大结点个数为2k-1个
  1. 对于任意一棵二叉树,如果其叶子结点个数为n0,度数为2的结点个数为n2,则一定满足 n0 = n2 + 1

三、二叉树的形态


  1. 空二叉树
  2. 仅有一个根节点
  3. 仅有左子树
  4. 仅有右子树
  5. 既有左子树也有右子树

四、两种特殊的二叉树


二叉树再进行划分有两种特殊的二叉树

1. 满二叉树


满二叉树是一棵深度为 k 并且有 2k-1 个结点的二叉树,既除叶子结点外每一个结点都有两个子结点的二叉树

image.png

2. 完全二叉树


完全二叉树是深度为 k ,有n个结点的二叉树当且仅当其每个结点都与深度为 k 的满二叉树中编号从 1 到 n 的结点一 一对应

image.png

在完全二叉树中,叶子结点只能在层次最大的两层上出现,最后一层的叶子结点一次排列在该层最左边的位置

相关文章
|
7月前
|
存储
二叉树的基本概念以及基本操作
二叉树的基本概念以及基本操作
123 2
|
6月前
|
算法
数据结构和算法学习记录——初识二叉树(定义、五种基本形态、几种特殊的二叉树、二叉树的重要性质、初识基本操作函数)
数据结构和算法学习记录——初识二叉树(定义、五种基本形态、几种特殊的二叉树、二叉树的重要性质、初识基本操作函数)
70 0
|
人工智能 数据库管理
动态规划概述
动态规划概述
97 0
|
存储 算法
树和二叉树基础概念
树是一种非线性的数据结构,它是由n(n>=0)个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。
|
存储
树和二叉树的基本概念和性质
树和二叉树的基本概念和性质
【二叉树的基本功能】
1.创建一棵二叉树 根据需求,创建一棵满足条件的二叉树,创建方法可以有多种 2.求树的节点总个数 求树的节点总个数 后序遍历的思想: 分治算法,先求左子树节点个数,再求右子树节点个数,再+1,这个+1就是加上自己
|
存储
线性表概述
线性表概述
127 1
线性表概述
|
存储
树和二叉树的基本概念
1.树的概念: a.树是一种非线性的数据结构,它是由n(n>=0)个有限结点组成一个具有层次关系的集合。 b.把它叫做树是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。 c.有一个特殊的结点,称为根结点,根节点没有前驱结点 除根节点外,其余结点被分成M(M>0)个互不相交的集合T1、T2、……、Tm,其中每一个集 合Ti(1<= i <= m)又是一棵结构与树类似的子树。每棵子树的根结点有且只有一个前驱,可以 有0个或多个后继 因此,树是递归定义的。 .
93 0
树和二叉树的基本概念
|
算法 数据库管理
【如何唯一确定一棵二叉树】思想分析及步骤详解
【如何唯一确定一棵二叉树】思想分析及步骤详解
306 0
【如何唯一确定一棵二叉树】思想分析及步骤详解