二叉树:对于每个节点X,节点的左子树所有项的值都小于X中的值,而右子树所有项的值都大于X中的值。
下面给出二叉树的简单实现方式:
成员函数如下:
注:因为二叉树上述定义,每个节点中存放的值x要满足一个条件:x至少是可以被“<”比较的类型。
对于上图中的插入、删除操作算法,有可能导致经过多次插入删除操作之后树变得不不平衡,对不同的节点操作时间差别很大,导致性能变差。所以有此引入改进算法:AVL树(一种自平衡二叉树)。