当前位置:首页 > 娱乐资讯 > 正文内容

将待解决问题分解为若干规模较小的同类问题

将待解决问题分解为若干规模较小的同类问题

[]

分治策略的核心在于将一个整体问题划分为若干个更小的、性质一致的子问题,这些子问题之间互不干扰。通过解决这些子问题分治算法在树的路径问题中的应用,我们能够找到原问题的解决方案。这实际上是一种通过分解目标来实现的程序算法将待解决问题分解为若干规模较小的同类问题,对于简单的问题将待解决问题分解为若干规模较小的同类问题,我们可以采用二分查找的方法来处理。

二、经典案例-汉诺塔

汉诺塔,亦称河内塔,源自印度一则古老的传说分治算法在树的路径问题中的应用,是一种经典的智力游戏。在创世之际,大梵天打造了三根金刚石柱,其中一根柱子上自下而上依次摆放着64片大小不一的黄金圆盘。按照大梵天的旨意,婆罗门需将这些圆盘从底部起,依照大小顺序移至另一根柱子上。同时明确,不得在小圆盘上对大圆盘进行扩展,且在三根柱子构成的框架内分治算法在树的路径问题中的应用,每次仅允许一个圆盘进行单次移动。

2.1 算法思路

将待解决问题分解为若干规模较小的同类问题 第1张

2.2 代码示例

需求:递归实现3阶汉诺塔的移动。

public class HanoiTower {
    public static void main(String[] args) {
        HanoiTower hanoi = new HanoiTower();
        // 3阶汉诺塔。
        hanoi.hanoi(3, 'A', 'B', 'C');
        // Direction:A--->C
        // Direction:A--->B
        // Direction:C--->B
        // Direction:A--->C
        // Direction:B--->A

        // Direction:B--->C
        // Direction:A--->C
    }
    /**
     * 使用分治算法,解决汉诺塔问题。
     *
     * @param n           盘子的数目
     * @param origin      源座
     * @param assist      辅助座
     * @param destination 目的座
     */
    public void hanoi(int n, char origin, char assist, char destination) {
        // 只有一个盘的时候,直接从 A->C 。
        if (1 == n) {
            move(origin, destination);
        } else {
            在存在n个及以上的情形下,我们可以将其视为由两部分组成:一是最底层的单个盘子;二是位于其上的所有盘子。
            首先,需将位于顶部的所有盘子从源座A移至目的座B,此过程中将借助辅助座C进行移动。
            hanoi((n - 1对起始点、目的地以及协助事项实施限制。
            // 2. 把最下边的盘 A->C 。
            move(origin, destination);
            将柱B上的所有盘子从B点(即当前源点)转移到C点(即当前目标点),在移动过程中需借助柱A(即当前辅助点)。
            hanoi(n - 1协助确定起点与终点。
        }
    }
    /**
     * 展示移动过程。
     *
     * @param origin      源座
     * @param destination 目的座
     */
    private void move(char origin, char destination) {
        System.out.println("Direction:" + origin + "--->" + destination);
    }
}

三、结束语

“-------怕什么真理无穷,进一寸有一寸的欢喜。”

微信公众号搜索:饺子泡牛奶。

加入微信交流群:************ ,请猛戳这里→点击入群

扫描二维码推送至手机访问。

版权声明:本文由全景资讯网发布,如需转载请注明出处。

本文链接:https://www.qjnew.com/post/4339.html

分享给朋友:

“将待解决问题分解为若干规模较小的同类问题” 的相关文章

顶流男星再陷抄袭风波!网友扒出多处相似细节

顶流男星再陷抄袭风波!网友扒出多处相似细节

在娱乐圈的风云变幻中,顶流男星似乎总是处于舆论的焦点之中。近日,这位曾经风光无限的明星再次陷入了抄袭风波,引发了广泛的关注和热议。从事件的开端来看,一位细心的网友开始在各大社交平台上发布对比帖子,指出该男星的新作品与其他作品之间存在多处相似细节。这些细节涵盖了剧情设定、人物形象、台词表达等多个方面,...

悬疑剧《暗夜追凶》豆瓣9.2分,网友:年度神剧

悬疑剧《暗夜追凶》豆瓣9.2分,网友:年度神剧

在浩瀚的影视海洋中,悬疑剧一直以其扣人心弦的剧情、错综复杂的谜团和令人窒息的紧张氛围而独树一帜。而《暗夜追凶》,这部豆瓣评分高达 9.2 分的悬疑剧,无疑是悬疑剧领域的一颗璀璨明珠,让众多网友纷纷高呼它为年度神剧。从剧情层面来看,《暗夜追凶》可谓是精心打磨,无懈可击。故事开篇,便以一起离奇的命案拉开...

男星与前妻复合?网友:剧本安排?

男星与前妻复合?网友:剧本安排?

在娱乐圈的纷繁世界里,各种绯闻和情感纠葛常常如潮水般涌动,其中男星与前妻复合的话题更是总能引发广泛的关注和热议。近日,一则关于某男星与前妻复合的消息不胫而走,瞬间点燃了粉丝们的热情,同时也让众多网友纷纷发出质疑:这是真的感情回归,还是剧本安排?这位男星曾经在娱乐圈中风光一时,凭借着出色的演技和迷人的...

郭德纲于谦再合体!德云社封箱演出票秒空

郭德纲于谦再合体!德云社封箱演出票秒空

在相声艺术的浩瀚星空中,郭德纲和于谦这对黄金搭档无疑是最为璀璨的星辰之一。他们的合作,如同美酒佳酿,历经岁月的沉淀,愈发醇香四溢;又似那陈年的老茶,每一次回味都能带给观众无尽的欢乐与感动。而当这对搭档再次合体,举办德云社的封箱演出时,那场面之震撼,简直令人叹为观止。德云社的封箱演出,一直以来都是相声...

B站百大UP主翻车!抄袭实锤引众怒

B站百大UP主翻车!抄袭实锤引众怒

在如今热闹非凡的 B 站世界里,百大 UP 主们宛如一颗颗璀璨的星辰,吸引着无数粉丝的目光。他们凭借着独特的创作风格、精彩的内容输出,在平台上崭露头角,收获了大量的关注与喜爱。就在人们沉浸在这些 UP 主们带来的欢乐与感动之中时,一起令人震惊的事件却悄然发生——某百大 UP 主翻车了,抄袭实锤被揭露...

好莱坞巨星汤姆·克鲁斯再婚!新娘竟是她?

好莱坞巨星汤姆·克鲁斯再婚!新娘竟是她?

在好莱坞的璀璨星空中,汤姆·克鲁斯一直是那颗最为耀眼的巨星之一。他以其非凡的演技、魅力十足的形象以及勇往直前的精神,征服了全球无数观众的心。近日一则震惊娱乐圈的消息传出——汤姆·克鲁斯再婚了!而他的新娘竟然是她,这个消息如同重磅,瞬间引发了全球媒体和粉丝的热议。这位神秘的新娘究竟是谁呢?她是如何走进...