摘要: 最近点对问题,三分治法,和求中位数思路是一样的,1,随机选一个数X,线性扫描,比X小的一堆A,比X大的一堆B,同时可以得到Min=Min(MinB-X,x-MaxA)2, 对于这两堆,分别重复1的步骤,直到结束。求中位数,需要抛弃掉一半数据,只求其中一个子集合的n/2-k大即可。《算法概论》上有证明递推式复杂度的通式。对于递推式T(n)=aT(n/b)+O(n^d)有如下结论:1,当d>log(b,a)时复杂度是O(n^d)2,当d=log(b,a)时复杂度是O(n^d*logn)3, 当d<log(b,a)时复杂度是O(n^(log(b,a))这个公式可以适用于快速排序,中位数等 阅读全文
posted @ 2011-07-06 17:03 CSDN大笨狼 阅读(1059) 评论(0) 推荐(0) 编辑