数据结构(三):非线性逻辑结构-特殊的二叉树结构:堆、哈夫曼树、二叉搜索树、平衡二叉搜索树、红黑树、线索二叉树

在上一篇数据结构的博文《数据结构(三):非线性逻辑结构-二叉树》中已经对二叉树的概念、遍历等基本的概念和操作进行了介绍。本篇博文主要介绍几个特殊的二叉树,堆、哈夫曼树、二叉搜索树、平衡二叉搜索树、红黑树、线索二叉树,它们在解决实际问题中有着非常重要的应用。本文主要从概念和一些基本操作上进行分类和总结。

一、概念总揽

(1) 堆

堆(heap order)是一种特殊的表,如果将它看做是一颗完全二叉树的层次序列,那么它具有如下的性质:每个节点的值都不大于其孩子的值,或每个节点的值都不小于其孩子的值,前者为小根堆,后者为大根堆。


(2) 哈夫曼树

在应用中通常给树中的节点一个有意义的实数,称为该节点的权,该权可能是该节点的度或访问频率等。一个节点和根之间的路径长度与这个节点的权的乘积称为该节点的带权路径长度。树中所有叶子的带权路径长度之和称为树的带权路径长度(weighted path length of tree),通常记为WP

你可能感兴趣的:(数据结构,数据结构杂烩,二叉线索树,红黑树,二叉平衡搜索树,堆,哈夫曼树)