引论-递归与分治.ppt

引论-递归与分治

* 例14-9 考察例14—8中的14个点。A中的最近点对为(b,h),其距离约为0.316。B中 f,j),其距离为0.3,因此d=0.3。当考察 是否存在第三类点时,除d,g,i,l,m 以外 的点均被淘汰,因为它们距分割线x=1的 距离》d。p1={d,i,m},p2={g,l), 由 于d和m的比较区中没有点,只需考察z, 即可。i的比较区中仅含点l。计算i和l的距离,发现它小于d,因此(i,l)是最近 的点对。 为了确定一个距离更小的第三类点, p1中的每个点最多只需和p2中的6个点比 * 线性时间要求: T(n)=T(cn)+O(n), 其中 0c1 T(n)=T(cn)+O(n)=T(c2n)+cO(n)+O(n) =T(ckn)+(ck+ ck-1+ …+ c2+c+1)O(n) =T(ckn)+[(1-ck+1)/(1-c)]* O(n) T(1)+[1/(1-c)] * O(n) = O(n) 当每次问题规模缩小固定小数e (0e1)倍时, c=1-e, T(n)=T((1-e)n)+O(n), 是线性时间. * 算法设计与分析 递归与分治 选择 最坏情况下的选择算法: 通过寻找一个好的划分基数,可使最坏情况下时间为O(n). 例如 : 考察如下情形: r=5, n=27,

文档评论(0)

1亿VIP精品文档

相关文档