算法竞赛数据结构题目checklist

算法竞赛数据结构题目checklist

线段树

  • 4 倍空间,但要搞清楚是谁的 4 倍空间,尤其是权值线段树。
  • 查询和修改时需要遵循 pushdown、本层逻辑、pushup 的三明治结构,否则懒更新会更新不上。
  • 递归到叶子节点或被完全包含的区间后,要及时返回。
  • if (l == r) tr[k] = a[l],下标要写对。
  • 叶子结点里不能调用 pushup,否则会下标越界,除非 pushup 里特判了叶子。
  • pushdown 最后要记得清空本结点的标记。
赞赏