码迷,mamicode.com
首页 > 其他好文 > 详细

分治法

时间:2016-04-16 21:19:10      阅读:111      评论: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
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!