摘要: 逆序对是这样定义的:对于给定的一段正整数序列,逆序对就是序列中ai>aj且i<j的有序对。 说人话,就是一个数列中,一个数在你后面,去比你小,则这俩数就是一对逆序对。 怎么做呢?常规的算法是开一个结构体,记录每一个数的值和他在数组中的位置。然后按值从小到大排序。 在开一个标记数组,从1到n循环,对于 阅读全文
posted @ 2018-03-17 22:44 mrclr 阅读(2509) 评论(0) 推荐(0)
摘要: 树状数组是实现单点修改,前缀查询的数据结构。 图中的c数组就是树状数组,可以看出一个c数组对应了不同数量的原始数组(a数组)的值。 为了实现这种存储结构,有必要引出lowbit这个概念。 首先,lowbit(x) = x & -x。 是什么原理,我觉得我将不太明白,各位百度一下吧,网上有很多不错的解 阅读全文
posted @ 2018-03-17 21:50 mrclr 阅读(161) 评论(0) 推荐(0)