您的位置:首页 > 其它

【辅助算法】整体二分

2016-05-04 15:50 183 查看
辅助算法在我这儿指在题目解题中不是主要算法,但是却在解题中充当着不可替代的作用。

整体二分。

一般在题目中出现最大值最小,最小值最大,第K大,第K小等字眼的时候我们就要警惕到底是应该贪心还是二分了。

这种问题主要有以下几种

对树上的一段区间求第K大

解答方法

码农方法:整体二分 + 树链剖分 + 线段树 + Treap

这种方法中我们对权值进行二分,然后对树上两点之间小于(或者是大于)MID的权值进行统计看是否符合第K大的要求,然后再不断调整左右区间端点。直到找到答案。

中国黑科技:倍增 + 主席树

这种方法中我们直接倍增找到LCA然后因为我们的主席树形态是一样的直接对四个区间做区间加减,直到找到第K大。

陈立洁大神给出的复杂度如下

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: