主席树是一种离线数据结构,是由很多棵线段树组成的。
第i棵线段树存的是前i个数的信息:
每一个线段存数字的出现次数(因此建树之前要离散化)。
那么n棵线段树不会MLE吗?
当然会了!
但是我们发现第i棵线段树和第i-1棵线段树是非常相似的,有许多结点完全相同,因此可以借用之前的结点,没必要新建结点。
具体建树方法建下图:
序列为 1 3 4 2
主席树是一种离线数据结构,是由很多棵线段树组成的。
第i棵线段树存的是前i个数的信息:
每一个线段存数字的出现次数(因此建树之前要离散化)。
那么n棵线段树不会MLE吗?
当然会了!
但是我们发现第i棵线段树和第i-1棵线段树是非常相似的,有许多结点完全相同,因此可以借用之前的结点,没必要新建结点。
具体建树方法建下图:
序列为 1 3 4 2