很简单的说一下二叉树和平衡二叉树的区别
一、二叉树
1、二叉树把第一个插入的节点做为根节点,后面插入的数据从根节点开始比较,小于比较节点值的都走右边,大于或等于都走左边。图中插入三个数都走左边。如果插入的数据都是有序的那么也就不会分叉就是一条线,如果需要查找一个数,而这个数正好在叶子节点那么就需要比较所以的节点值。
二、平衡二叉树
图中插入三个数在没有平衡之前和二叉树一样,平衡之后就是下图的样子。二叉树的平衡因子的绝对值不能大于1所以左边0个节点减右边2个节点等于-2。绝对值大于了1所以进行了旋转得到了下图
三、现在很明显的两个区别
1、查询:二叉树查找3需要比较三次,而平衡二叉树两次就够了。
2、插入:二叉树不需要变动原来的节点,而平衡二叉树需要保持平衡所以需要旋转。