必威体育Betway必威体育官网
当前位置:首页 > IT技术

二叉树的三种遍历

时间:2019-06-19 19:45:15来源:IT技术作者:seo实验室小编阅读:63次「手机版」
 

二叉树遍历

1、二叉树的定义

二叉树是n(n≥0)个节点的有限集合,它或者是空树(n=0),或者是有一个根节点及两颗不相交的且分别称为左、右子树的二叉树所组成。可见,二叉树同样具有递归性质。

特别需要注意的是,尽管树和二叉树的概念之间有许多联系,但它们是两个不同的概念,树和二叉树之间最主要的区别是:二叉树结点的子树要区分左子树和右子树,即使在节点只有一个子树的情况下,也要明确指出该子树是左子树还是右子树。另外,二叉树结点最大度为2,二树中不限制节点的度数。

2、二叉树的性质

(1)二叉树第i层(i≥1)上至多有2^{i-1}个节点

(2)高度为k的二叉树之多有2^{k}-1个节点(k≥1)

(3)对于任一颗二叉树,若其终端的节点数为n_{0},度为2的节点数为n_{2},则n_{0}=n_{2}+1

(4)具有n个节点的完全二叉树的深度为[\log_{2^{n}}]+1

3、二叉树的存储结构

1)二叉树的顺序存储结构

用一组地址连续的存储单元存储二叉树中的节点,必须把节点排成一个适当的线性序列,并且节点在这个序列中的相互位置能反映出节点之间的逻辑关系。

2)二叉树的链式存储结构

由于二叉树的节点中包含有数据元素、左子树的根、右子树的根及双亲等信息,因此可以用三叉链表或二叉链表(即一个节点含有三个指针或两个指针)来存储二叉树,链表的头指针指向二叉树的根节点。

4、二叉树的遍历

遍历二叉树的方法分别有先序遍历、中序遍历、后序遍历。

先序遍历:先遍历根节点,然后是左子树,最后是右子树;根节点->左子树->右子树

中序遍历:先遍历左子树,然后是根节点、最后是右子树;左子树->根节点->右子树

后序遍历:先遍历左子树,然后是右子树,最后是根节点;左子树->右子树->根节点

              A

B                   C

  D                E

   F     G

先序遍历:ABDFEGC

中序遍历:DFBGEAC

后序遍历:FDGEBCA

相关阅读

java中关于Arrays.sort()的三种用法

Java的Arrays类中有一个sort()方法,该方法是Arrays类的静态方法,在需要对数组进行排序时,非常的好用。 但是sort()的参数有好几种,下

三种可用性测试方法介绍

我们先说下为什么可用性测试如此重要。首先可用性测试可以发现你网站的潜在问题,通过可用性测试获得的反馈数据,可以了解一个用户在

后台遍历json数据:JsonArray和JsonObject遍历方法

一:遍历JsonArray   // 一个未转化的字符串 String str = "[{name:'a',value:'aa'},{name:'b',value:'bb'},{name:'c',value:'

查找——平衡二叉树的实现(代码超详细注释)

既然你搜索到了这篇文章,那么平衡二叉树的作用想必心中已经清楚了,我们接下来就直接来谈谈代码... 目录 知识准备   进阶讲解 

数据结构 - 二叉树 - 面试中常见的二叉树算法题

数据结构 - 二叉树 - 面试中常见的二叉树算法题 数据结构是面试中必定考查的知识点,面试者需要掌握几种经典的数据结构:线性表(数组

分享到:

栏目导航

推荐阅读

热门阅读