Skip to content

Commit

Permalink
Update Readme.md
Browse files Browse the repository at this point in the history
  • Loading branch information
wisdompeak authored Jan 31, 2019
1 parent 922cd03 commit edd3ef9
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion Segment_Tree/715.Range-Module/Readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ setTree* right;
```
接下来再看setStatus。线段树模板写熟了之后,就能知道我们总是根据三种情况讨论:1.[a,b]与这个区间完全不相交(一般就是返回) 2.[a,b]包括了整个区间(一般就是整体赋值),3. [a,b]与该区间相交,这种情况下基本都是要再递归处理。
在这里,第二种情况下,我们需要添加一个remove操作,以保证线段树的空间高效。因为整体抹平的区间后,我们是不需要再有任何子区间的。另外,需要提醒的是,递归操作后,我们还需要及时更新当前区间的status。和之前的线段树的题目不同,我们这里,即使是非底层节点的status也是有意义的,true表示该区间都是tracked,反之就说明没有全部被tracked。这个在后续getStatus时也是很有用的信息
在这里,第二种情况下,我们需要添加一个remove操作,以保证线段树的空间高效。因为整体抹平的区间后,我们是不需要再有任何子区间的。另外,需要提醒的是,递归操作后,我们还需要及时更新当前区间的status。和之前的线段树的题目不同,我们这里,即使是非底层节点的status也是有意义的,true表示该区间都是tracked,反之就说明没有全部被tracked。这个对于getStatus函数是很有用的信息,这样我们就不用总是递归到最低层节点即可返回结果
```cpp
void setStatus(int a, int b, int s)
{
Expand Down

0 comments on commit edd3ef9

Please sign in to comment.