首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
树军
订阅
用户6012492564984
更多收藏集
微信扫码分享
微信
新浪微博
QQ
18篇文章 · 0订阅
线索二叉树
二叉树添加了直接指向节点的前驱和后继的指针的二叉树称为线索二叉树。
数据结构与算法-线索二叉树
对于n个结点的二叉树,在二叉链存储结构中有n+1个空链域,利用这些空链域存放在某种遍历次序下该结点的前驱结点和后继结点的指针,这些指针称为线索,加上线索的二叉树称为线索二叉树。 这种加上了线索的二叉链表称为线索链表,相应的二叉树称为线索二叉树(Threaded BinaryTr…
数据结构与算法-二叉查找树平衡(AVL)
上节讨论的DSW算法可以从全局重新平衡树:每个节点都可能参与树的重新平衡,或者从节点中移除数据,或者重新设置指针的值。但是,当插入或删除元素时,将只影响树的一部分,此时树的重新平衡可以只在局部进行。局部平衡二叉查找树有一个鼎鼎大名的算法,叫做AVL算法,由AVL算法构建出来的二…
相对友好的 AVL Tree 教程
要判断这棵树中是否存在 1 。 1 处在这棵树的最底部,并且这个棵树呈现出一边倒的形状,导致找 1 时遍历了所有的节点,这种情况下时间复杂度为 O(n) 。可见一旦二叉搜索树失去了平衡也就失去了效率,理想的二叉搜索树,是树的节点“均匀”分布在根节点两侧,才能满足时间复杂度 O(…
每周算法-AVL树
之前学习过二叉搜索树BST,顺序的插入数据的时候BST被退化为链表,因此为了防止这种情况的发生,就需要引入一些机制,那就是平衡树。平衡的机制就产生了平衡因子这个概念,它用于表示一个节点的平衡性,如一个节点的平衡因子为1,则表示该节点的左子树和右子树的高度差为1。在这里将平衡因子…
看图轻松理解数据结构与算法系列(AVL树)
推出一个新系列,《看图轻松理解数据结构和算法》,主要使用图片来描述常见的数据结构和算法,轻松阅读并理解掌握。本系列包括各种堆、各种队列、各种列表、各种树、各种图、各种排序等等几十篇的样子。 AVL树,也称平衡二叉搜索树,AVL是其发明者姓名简写。AVL树属于树的一种,而且它也是…
数据结构与算法-二叉查找树平衡(DSW)
上一节探讨了二叉查找树的基本操作,二叉查找树的查找效率在理想状态下是O(lgn),使用该树进行查找总是比链表快得多。但是,该论点并不总是正确,因为查找效率和二叉树的形状息息相关。就像这样: 图1-1给出了3颗二叉查找树,它们存储着相同的数据,但很明显,图1-1(A)的树是最好的…
【数据结构】手写平衡二叉树(AVL)
平衡二叉树,又称为AVL树,当树不是空树时,它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。AVL树查找的时间复杂度为O(logN)。
替罪羊树 —— 暴力也是种优雅
作为一棵二叉搜索树,那么最重要的就是如何保持自己的平衡,为了保持平衡,二叉搜索树们八仙过海各显神通,如AVL树、红黑树、Treap树、伸展树等等,但万变不离其宗,他们的方法都是基于旋转,然后更改
【译】Swift算法俱乐部-伸展树
伸展树是一种数据结构,在结构上与平衡二叉搜索树相同。 在伸展树上执行的每个操作都会导致重新调整,以便快速访问最近运行的值。 在每次访问时,树被重新排列,并且使用一组特定的旋转将访问的节点移动到树的根,这些旋转一起被称为Splaying。 给定节点a,如果a不是根节点,a具有子节…