用于C++中的段树的STL
STL for segment tree in C++
段树是否有STL?
在竞争性编程中,为seg树编码需要花费大量时间。我想知道是否有STL,这样可以节省很多时间。
我假设"分段树"实际上是指范围树,它在编程竞赛中比存储一组间隔的更专业的结构更常用。
C++标准库中没有这样的容器,但如果您正在参加ACM竞赛,您可以考虑编写自己的容器,并根据需要简单地复制它。你可以在这里找到我自己的实现(包括延迟传播),但如果你在网上搜索,你可能会找到一个更通用的版本。
在需要求和而不是最小值或最大值的应用程序中,可以使用二进制索引树而不是分段树,这样更快、使用更少的内存,也更容易编码(大约十几行或更少)。
C++中没有用于段树的STL。但是,您可以查看名为Interval Container Library(ICL)的Boost Library,它应该满足您的需求。
相关文章:
- 结构字段名称与 GDB 中的 STL 数组冲突
- 我试图用这段代码找到二叉树的高度,但它一直返回 0,有人可以告诉我为什么吗?
- 在 c++ 中解决段树以外的范围查询的有效方法是什么?
- 如何知道用于实现标准代码段的确切数据结构和算法,例如在C++STL中?
- 如何使用 stl 容器有效地存储对象?(即根据其字段的值进行搜索)
- 列表STL的时间复杂性在一段时间内进行排序
- 如何从提升属性树中读取字段类型
- C++:段树中的运行时错误
- RMQ段树中的错误
- C++STL映射异常.(不可变树的根)
- 为什么这段代码没有在二叉搜索树中插入节点
- 使用 GCC 的函数检测,为什么使用 C++ STL 容器或流 I/O 会导致段错误?
- 正在段树中查询
- 用于C++中的段树的STL
- 段树2D,矩形之和
- 段树的迭代代码
- 如何使用段树计算数组中的反转次数
- 段树实现中的问题
- 寻找最大使用段树给出错误的结果
- 内存分配错误-段树