关于一种快速在线二维数点查询方法
  • 板块学术版
  • 楼主longlong666
  • 当前回复15
  • 已保存回复15
  • 发布时间2025/7/30 16:00
  • 上次更新2025/7/30 20:48:15
查看原帖
关于一种快速在线二维数点查询方法
1062290
longlong666楼主2025/7/30 16:00

该算法正确性未经检验,希望能由广大的谷民验证一下(毕竟代码量太大,而且难写难调)。

我们可以维护一颗平衡六叉树以解决该问题,满足:

  1. 有三个左儿子,三个右儿子。
  2. 将二维数点视为线段,l1,l2,l3,r1,r2,r3l_1,l_2,l_3,r_1,r_2,r_3 分别表示三个左儿子和三个右儿子,l1l_1 表示在该线段左侧不相交,l2l_2 表示被该线段完全包含,l3l_3 表示在该线段左侧相交,r1r_1 表示在该线段右侧不相交,r2r_2 表示完全包含该线段,r3r_3 表示在该线段右侧相交。
  3. 实现平衡性,可以插入删除线段(二维数点)。

会场预约强制在线动态二维数点便可以用这种方法通过。

同样的,三维、四维也可以通过增加维数的方式解决只是码量过大

希望有大佬能够打出代码验证一下正确性,或者指出我的问题。

2025/7/30 16:00
加载中...