社区讨论

萌新求助 rnd 函数 & fhq-treap 注意事项总结

P3369【模板】普通平衡树参与者 4已保存回复 9

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
9 条
当前快照
1 份
快照标识符
@lo8pf497
此快照首次捕获于
2023/10/27 22:24
2 年前
此快照最后确认于
2023/10/27 22:24
2 年前
查看原帖
  1. 勤 pushup。在 split 时要 pushup,在 merge 时也要 pushup。
  2. 合并的两个子树一定要满足前者严格小于后者。所以,在处理完插入,删除等操作之后,合并顺序要注意,不然会陷入死循环。
  3. 在查前驱或后继的时候,由于要让指针不断地向左子树/右子树跳,所以会丢失该子树的根的信息,导致最后 merge 的两个参数不是根,导致出现错误。因此要将该指针赋值一份再跳。
  4. 在树上二分的时候,向某侧递归可能要减去某个值,就像线段树上二分那样。千万不要忘记这一点。

萌新求助,我使用 mt19937 rnd(233) 来构造随机数的时候,会出现一个 warning,说什么 narrowing conversation of 'rnd, std::mersenne_twister_engine<...>' ,长得编译器都放不完,所以我根本查不到。所以,请问这个 warning 是什么意思呢?代表了什么问题吗 /kel /kel /kel

回复

9 条回复,欢迎继续交流。

正在加载回复...