没有合适的资源?快使用搜索试试~ 我知道了~
这是一个红黑树大框架, 红黑树之中比较重要的就是旋转操作。 在本文件中, 两个旋转操作都包含在内。 接口主要有插入, 寻找, 判断是否为一棵红黑树等等的代码。 一共五百行左右。 学习map和set的友友们如果对红黑树的底层框架很模糊。 可以借鉴一下本文件中的红黑树。 虽然有些地方写的不够全不够好, 但是基本的迭代器功能都已经实现。其实红黑树的学习主要就是学习它的插入, 最重要的就是根据红黑树的插入操作了解红黑树是如何进行旋转的, 可以根据情况将红黑树的旋转分为三个情况。具体的情况分析, 文件中都进行了讨论。 相较于AVL树的旋转, 红黑树的旋转要更加简单一些。 思路不变, 但是不用像AVL树一样检查平衡因子。另外一个难点就是红黑树的迭代器的自增自减操作, 红黑树的自增操作需要用到二叉树的非递归遍历思想,主要是一个非递归的中序遍历。 看不懂的友友可以去力扣搜一搜相应的二叉树非递归题目。做一做, 就可以很好的理解红黑树迭代器的加加和减减。 只要懂了加加, 减减也就懂了。 另外, 带头红黑树的加加和减减和普通红黑树的注意点有些不同。 要注意的是本文件实现的是带头的红黑树。
资源推荐
资源评论
资源评论
打鱼又晒网
- 粉丝: 2447
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功