数据结构
TeeEye
自律即自由
展开
-
数据结构 (一): 树状数组 / 二叉索引树 / BIT
树状数组简介lowbitBIT 的组织方式代码 ( C 语言 )注意事项总结简介树状数组的学名是二叉索引树, Binary Indexed Tree, BIT, 下文以 BIT 简称.BIT 是一种特殊组织过的数组, 它和普通数组的唯一区别是:BIT 的核心任务是快速求区间和, 而数组的核心任务是随机存取, 因此, 二者在只是时间复杂度上有所不同:数据结构单点修改单点访问区...原创 2019-05-06 23:01:08 · 354 阅读 · 0 评论 -
数据结构 (习题): 树状数组相关
树状数组习题PKU 2352思路代码PKU 2481代码POJ 3067思路代码PKU 2352链接在这里.题目大意: 一个点的 order 是不包括它在内的所有在它左下方的点的总数, 问你点集中每个 order 的点的数量.思路树状数组的牛逼之处在于, 它可以动态地查询比当前值小的元素个数 (要求取值范围不要太大). 在这题当中, 因为有两个维度, 所以我们可以先通过排序 (题目已经提...原创 2019-05-07 10:31:29 · 149 阅读 · 0 评论 -
数据结构 (二): RMQ / 区间最值查询
RMQ简介RMQ 的组织方式代码 ( C语言 )总结简介在上一篇博客中介绍的 BIT 数据结构用来进行单点修改和查询区间和, 而本篇的数据结构 RMQ (Range Minimum Query) 则用来进行区间最值查询.RMQ 的组织方式RMQ 和普通数组的区别是: RMQ 是二维数组, 维度为 {N,logN}\{N, logN\}{N,logN}, 其中 rmq[i][j]rmq[i]...原创 2019-05-07 16:46:57 · 382 阅读 · 0 评论