
线段树
INF菜
思路决定出路
展开
-
线段树好题
线段树好题题目链接题面思路连续字段和包括线段树当前节点的三个部分:1.最大连续子段和只出现在当前节点的左儿子的连续区间中,2.最大连续子段和只出现在当前节点的右儿子的连续区间中,3.最大连续子段和出现在当前节点的左儿子和右儿子所组成连续区间中。那么你需要维护当前节点的几个信息,左右儿子的前缀和,后缀和,以及左右儿子的总和。这里一个个比较如果最大连续子段和是前缀和,是不是只需要比较左儿子的总和和加上幼儿子的最大前缀和与左儿子前缀和的比较大小取max,同理后缀和是不是右儿子的总和加上左儿子的后缀和的最原创 2021-04-27 20:47:05 · 139 阅读 · 0 评论 -
线段树
线段树模板题线段树可以在较低时间复杂度下访问和维护区间信息,它利用了树形结构每个节点的父节点,存储它的子子孙孙的信息,比如和权值等,例如根节点存储这个区间里的信息,以模板题为例,首先我们得先建树,根节点存储整个区间的和,然后其左儿子存储前一半区间的和,右儿子存储后一半区间的和,然后递归建下去,知道访问到叶子节点时,其区间长度为一,就是代表这个区间里的一个元素值,这里需要注意,建树时,我们先递归到叶子节点才能开始建树。然后就是懒标记,就是在添加区间信息时,不一定需要往下更新,只更新当前的节点的值,并在当前原创 2021-04-26 17:54:02 · 81 阅读 · 0 评论