chenfy27的刷题记录

导航

2024年10月17日 #

模板-整型哈希hval

摘要: 可以考虑将单个int类型映射成3个uint64,再执行加减操作,从而实现将多个int的集合最终映射成3个uint64,通过比较这3个uint64是否相等来快速判断集合是否相同。 由于加法满足交换律,与顺序无法,因此上述做法天然支持多重集合。对于单重集合,可以考虑再加个set维护当前插入了哪些元素,已 阅读全文

posted @ 2024-10-17 12:37 chenfy27 阅读(11) 评论(0) 推荐(0)

模板-带前缀和的平衡树SumTreap

摘要: 在Treap的基础上增加了前缀和接口,使用时TYPE一般指定为i64类型,新增接口如下: 最小的k个元素之和:ksum(相同元素有几个就算几个) 最大的k个元素之和:kSum(相同元素有几个就算几个) template <typename TYPE> struct SumTreap { struct 阅读全文

posted @ 2024-10-17 11:34 chenfy27 阅读(16) 评论(0) 推荐(0)

模板-平衡树Treap

摘要: 基于treap实现的平衡树,支持以下操作和特点: 定义时不需要指定大小上限,会自动分配空间。 已删除的节点空间会回收,并重复利用。 默认为可重集合,如果希望相同元素只存1个,可以在定义时将multi参数设为0,或者在定义后通过setmulti接口设置。 支持insert/erase操作,同时可以通过 阅读全文

posted @ 2024-10-17 11:29 chenfy27 阅读(24) 评论(0) 推荐(0)