二叉树

Posted honkeryblogs

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二叉树相关的知识,希望对你有一定的参考价值。

二叉树的存在是为了弥补线性表的的不足。

?

null Vector List
Search 较快 较慢
Insert 较慢 较快

?

如上表,顺序表结构和链表结构都不有不足,其算法效率在有些时候低也是结构本身所带来的问题。而树这种半线性结构在实现得当的情况下是可以鱼和熊掌皆可得的。我们知道任何树都可以转换成二叉树,对树的研究可以说是对二叉树的研究。

一. 二叉树的数据结构

typedef struct Treenode* Bintree;
typedef struct Treenode{
    int val;
    int height;//红黑树节点初始高度为-1,因为默认插入红色节点
    RBColor color;//实现红黑树(RBTree)使用
    Bintree parents;
    Bintree left;
    Bintree right;
}Tnode;//二叉树节点

以上是关于二叉树的主要内容,如果未能解决你的问题,请参考以下文章

数据结构 二叉树

数据结构二叉树经典基础习题

数据结构 二叉树的简单理解和代码实现

用c语言写二叉树,源代码。

数据结构中二叉树的顺序存储结构代码怎么编写?

二叉树练习题