数据结构之树与二叉树

原创 2018年04月15日 11:42:33

树与二叉树

树是一种非常常用的数据结构,尤其二叉树的应用更是广泛,哈夫曼树及哈夫曼编码就是二叉树的重要用途,排序二叉树,平衡二叉树,红黑树在实际编程中都有极其广泛的用途,例如,Java集合框架的TreeMap本质上就是红黑树。


将介绍:

》树的三种存储结构:

父节点表示法,子节点链表示法,链表存储

》二叉树

二叉树的各种便利方式,以及三种优先遍历,和广度优先遍历

》哈夫曼树,排序二叉树,和红黑树



"红黑树”,它一种特殊的二叉查找树。红黑树的每个节点上都有存储位表示节点的颜色,可以是红(Red)或黑(Black)。

红黑树的特性:
(1)每个节点或者是黑色,或者是红色。
(2)根节点是黑色。
(3)每个叶子节点(NIL)是黑色。 [注意:这里叶子节点,是指为空(NIL或NULL)的叶子节点!]
(4)如果一个节点是红色的,则它的子节点必须是黑色的。
(5)从一个节点到该节点的子孙节点的所有路径上包含相同数目的黑节点。

注意
(01) 特性(3)中的叶子节点,是只为空(NIL或null)的节点。
(02) 特性(5),确保没有一条路径会比其他路径长出俩倍。因而,红黑树是相对是接近平衡的二叉树。

红黑树示意图如下:


红黑树的应用

红黑树的应用比较广泛,主要是用它来存储有序的数据,它的时间复杂度是O(lgn),效率非常之高


我的软考之路(四)——数据结构与算法(2)之树与二叉树

上篇博文主要介绍的是数据结构的线性结构,我们这篇博文介绍非线性结构—树与二叉树,我先介绍树的一些基本概念,树的遍历,再介绍二叉树相关概念和特性,以及二叉树的遍历,最后再树与二叉树的对比,总结。    ...
  • jiuqiyuliang
  • jiuqiyuliang
  • 2014-04-25 08:16:42
  • 9921

数据结构与算法(C#)--树和二叉树

3.1、树的表示方法 3.2、树的基本术语 1、结点、结点的度和树的度 结点:包含一个元素及若干指向子树的分支 结点的度:结点所拥有的子树数 树的度:树内各结点度的最大值 叶子结点:度为零的结点,...
  • sgzy001
  • sgzy001
  • 2013-12-09 23:46:30
  • 1376

数据结构 树 二叉树

  • 2011年11月29日 18:33
  • 39KB
  • 下载

数据结构:树、森林和二叉树的转换

1、树转换为二叉树 (1)加线。在所有兄弟结点之间加一条连线。 (2)去线。树中的每个结点,只保留它与第一个孩子结点的连线,删除它与其它孩子结点之间的连线。 (3)层次调整。以树的根...
  • u010889616
  • u010889616
  • 2015-08-28 10:24:51
  • 1305

数据结构学习之二叉树(面试易考题整理)

【摘要】计算机科学中,二叉树是每个节点最多有两个子树的树结构。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)。二叉树常被用于实现二叉查找树和二叉堆。二叉...
  • xy010902100449
  • xy010902100449
  • 2015-06-23 09:20:56
  • 4887

数据结构 图 树 二叉树 常考知识点复习

二叉树: 二叉排序数(二叉搜索数、二叉查找树):每个结点的左孩子都比该结点小,右孩子都比该结点大 平衡二叉树:平衡因子(BF)左子树的深度减去右子树的深度,值为-1,0,1.每个结点的平衡因子的绝...
  • liufangbaishi2014
  • liufangbaishi2014
  • 2016-10-19 22:21:16
  • 968

[数据结构] 二叉树的建立及其基本操作

如图: 代码:   #include #include #include #include using namespace std; char ch; typedef struct Bi...
  • sr19930829
  • sr19930829
  • 2014-05-28 19:16:32
  • 2999

数据结构------树,森林及二叉树的转换方法

一、普通树转化为二叉树        (1)加线:在所有兄弟节点之间加一条连线             (2)去线:对树中的每个节点,只保留它与第一个节点的连线,删除它与其他孩子节点之间的连线...
  • u011459278
  • u011459278
  • 2014-03-24 23:08:49
  • 3479

常见数据结构(二)-树(二叉树,红黑树,B树)

本文介绍数据结构中几种常见的树:二分查找树,2-3树,红黑树,B树
  • h3243212
  • h3243212
  • 2016-10-14 22:58:31
  • 2292

数据结构 第5章 树和二叉树

第5章 树和二叉树 本章中主要介绍下列内容:   1.树的定义和存储结构   2.二叉树的定义、性质、存储结构   3.二叉树的遍历、线索算法   4.树和二叉树的转换  ...
  • begtostudy
  • begtostudy
  • 2010-09-20 19:28:00
  • 4138
收藏助手
不良信息举报
您举报文章:数据结构之树与二叉树
举报原因:
原因补充:

(最多只允许输入30个字)