分治算法---汉诺塔
生活随笔
收集整理的這篇文章主要介紹了
分治算法---汉诺塔
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
思路分析
代碼實(shí)現(xiàn)
package com.atguigu.dac;public class Hanoitower {public static void main(String[] args) {hanoiTower(5,'A','B','C');}//漢諾塔移動(dòng)的方法//使用分治算法public static void hanoiTower(int num,char a,char b,char c){//如果只有一個(gè)盤(pán)if(num==1){System.out.println("第1個(gè)盤(pán)從"+a+"->"+c);}else {//如果我們n>=2情況,我們總是可以看做是兩個(gè)盤(pán)1.最下邊的一個(gè)盤(pán)2.上面的所有盤(pán)//1./先把最上面的的所有盤(pán)A->B,移動(dòng)過(guò)程會(huì)使用到ChanoiTower(num-1,a,c,b);//2.把最下邊的盤(pán)A->CSystem.out.println("第"+num+"個(gè)盤(pán)從"+a+"->"+c);//3.把B塔的所有盤(pán)從B->C,移動(dòng)過(guò)程會(huì)使用到AhanoiTower(num-1,b,a,c);}} }總結(jié)
以上是生活随笔為你收集整理的分治算法---汉诺塔的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 电脑设置
- 下一篇: adobe audition更换新的声卡