首页 > 其他 > 详细

分治法

时间:2016-04-16 21:15:56      阅读:231      评论:0      收藏:0      [点我收藏+]

分治法的基本思想是将一个规模为n的问题分解成k个规模较小的子问题(最好使子问题规模大致相同),这些子问题相互独立且与原问题相同,递归的解这些子问题,然后将各子问题的解合并到原问题的解,它的一般算法设计模式如下:

Divide-and-Conquer(P)

{

    if( |P| <= n0) Adhoc(P);

    divide P into smaller subinstances

    P1,P2,P3,P4.......,Pk

    for(i=1;i<=k;i++)

        yi=Divide-and-Conquer(Pi)

    return Merge(y1,y2,....yk)
}

其中|P|表示问题P的规模, n0为阈值,表示当问题P的规模不超过n0时,问题容易解决,不必再继续分解 。Adhoc(P)是分治法中的 基本子算法.

分治法

原文:http://www.cnblogs.com/phenixyu/p/5399221.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!