一文搞定系列(图文详解,代码解析):AVL树

AVL树是一种特殊的二叉搜索树

二叉搜索树的局限

我们已经知道,一般情况二叉搜索树的查找效率为log(n),已经足够好了。但是这里为什么强调是一般情况呢?是因为,对于同样的节点,插入的顺序不同,最后得到的二叉搜索树的结构也不一样,对于(2,3,4,5,6,7,8)序列,可以构成下面这样的一颗二叉搜索树:

img

还是(2,3,4,5,6,7,8)序列,它也能构成下面这样的二叉搜索树,准确的说它应该是一个单链表了,对于单链表,我们很清楚,它的查找操作时间复杂度为n。

img

n和log(n)的时间复杂度意味什么?从下面的图可以看到,随着元素的增加,log(n)的时间复杂度的增长要远小于n。因此我们自然希望二叉搜索树能尽可能保持log(n)的深度。因此,本文的主人公AVL树横空出世了。

img

什么是AVL树

AVL

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值