概述 上两篇文章,我们依次讲解了树、二叉树、二叉查找树。二叉查找树是最常用的一种二叉树,它支持快速插入、删除、查找操作,各个操作的时间复杂度跟树的高度成正比,理想情况下,时间复杂度是 O ( l o g n ) O(logn) O(logn)。 不过,二叉查找树在频繁的动态更新过程中,可能会出现树的高度远大于 l o g 2 n log_2n log2n 的情况,从而导致哥哥操作的效率下
题目截图 题目分析 每次1操作将会分裂成两块区间长度,以最近右端点记录左侧区间的长度即可 因此涉及到单点更新和区间查询 然后左右侧最近端点则使用redBlackTree,也就是python中的sortedlist ac code type seg []int// 把 i 处的值改成 valfunc (t seg) update(o, l, r, i, val int) {if l =