07二叉树

二叉树

二叉树(Binary Tree)——是n(n >= 0)个结点所构成的集合,它或为空树( n = 0 );或为非空树,对于非空树T:

  • 有且仅有一个称之为根的结点
  • 除根以外的其余结点分为两个互不相交的子集T1和T2,分别称为T的左子树和右子树,且T1和T2本身又是二叉树

img点击并拖拽以移动

二叉树的特点与树的异同

img点击并拖拽以移动

二叉树的几种形态

img点击并拖拽以移动

三结点二叉树的五种形态

img点击并拖拽以移动

二叉树性质

img点击并拖拽以移动

img点击并拖拽以移动

img点击并拖拽以移动

二叉树的链式存储结构

img点击并拖拽以移动

三叉链表存储结构

img点击并拖拽以移动

二叉树的遍历

遍历的作用:是树结构插入、删除、修改、查找和排序运算的前提,是二叉树一切运算的基础和核心

按照某条搜索路线遍访每一个结点且不重复(又称为周游)

遍历二叉树——从根结点出发,按照某种次序依次访问二叉树中所有结点,使得每个结点均被访问一次且仅被访问一次

前序遍历

操作定义:

如二叉树为空,则不操作,否则

  • 访问根结点
  • 前序遍历左子树
  • 前序遍历右子树

特点:第一位一定是根结点

心法口技—— >根- 左 - 右

中序遍历

操作定义: 如二叉树为空,则空操作;否则:

  • 中序遍历左子树
  • 访问根结点
  • 中序遍历右子树

特点:根结点必在中间

心法口诀: 左 - 根 - 右

后序遍历

操作定义:

如二叉树为空 ,则空操作;否则:

  • 后序遍历左子树
  • 后序遍历右子树
  • 访问根结点

特点: 最后一位一定是根结点

posted @ 2022-01-03 21:34  小白学安全  阅读(236)  评论(0)    收藏  举报