第七周周中总结

来源:互联网 发布:java安装后无法打开jar 编辑:程序博客网 时间:2024/05/21 11:37

线段树专题快要结束了,这两天努力的出题中,这两天出的题目中有道线段树离散化处理的题目,想了好久,没想出思路来,从大神那学习了一下离散化的处理,以前见到的题目都是对数组进行离散化,利用结构体就可以,现在是对区间进行离散化,对于区间离散化粗略的理解将所有区间端点排序,对应新的区间标记排序,再根据原来的点把排序和原区间对应起来形成离散后的坐标,和数组离散化一样把范围缩小可以用数组表示出来,线段树应用离散化有点繁琐,还需要好好在看即便代码,熟悉离散化处理。

除了离散化处理还碰到一道二维线段树题目,学习了一下二维线段树的模版,二维线段树也是对矩形区域进行操作,二维线段树是一棵四叉树,树上每个结点保存一个矩形和一个域,非叶子结点一定有二或四 个儿子结点,儿子结点表示的四个矩形交集为空,并集为父结点表示的矩形;叶子结点表示的矩形长宽均为1,域则表示了需要求的数据,每个父结点的域可以通过四个儿子结点得出。建树时必定访问到每个结点,而且都是访问一次,更新的时候,每次更新一个单位矩形的值,访问时只会访问从树的根结点到叶子结点的一条路径,查询时,情况类似一维的区间询问。从根结点开始拆分区域,当询问区域完全覆盖结点区域时,不需要递归往下走。二维线段树看起来有点麻烦,也需要时间研究研究。

时间不多了,努力做题。

原创粉丝点击