分享

算法设计与分析 2.2 分治法基本思想

 shaobin0604@163.com 2006-10-19
分治法基本思想是将一个规模为 n 的问题分解成为 k 个规模较小的子问题,这些子问题相互独立且与原问题相同。递归地解这些子问题,然后将各子问题的解合并得到原问题的解。

DivideAndConquer(P) {
    if (|P| < f) 
        adhoc(P);
    else {
        divide P into smaller subinstances P1, P2, P3, ..., Pk;
        for (int i = 1; i <= k; i++)
            yi = DivideAndConquer(Pi);
        return merge(y1, y2, y3, ..., yk);
    }
}
 
其中|P|表示问题P的规模。f 为一阀值,表示当问题的规模不超过 f 时,问题已经容易解出,不必再继续分解。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多