hanoi 塔问题_Hanoi塔

hanoi 塔问题_Hanoi塔importjava.util.Scanner;/* *汉罗塔问题 */publicclassHanoiExec{publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstubSystem.out.println(“请输入盘子数n”);Scanner

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用
import java.util.Scanner;

/*

 * 汉罗塔问题

 */

public class HanoiExec {


public static void main(String[] args) {


// TODO Auto-generated method stub


System.out.println(“请输入盘子数n”);


Scanner sn=new Scanner(System.in);


int n=sn.nextInt();


HanoiExec hanoi=new HanoiExec();


System.out.println(“The steps to move ” +n+” disks:”);


hanoi.hanoi(n, ‘A’, ‘B’, ‘C’);


System.out.println(n+”个盘子最少需要移动”+(Math.pow(2,n)-1)+”次。”);


}





public void hanoi(int n,char one ,char two,char three){


if(n==1){


this.move(one, three);


}else{


//分三步:


//1、借助第三个柱子把第一个柱子的n-1个盘子移动到第二个柱子上


//2、把第一个柱子上的第n个盘子从第一个柱子移动最终的第三个柱子上


//3、借助第一个柱子把第二个柱子的n-1个盘子移动到第三个柱子


this.hanoi(n-1,one,three,two);


this.move(one ,three);


this.hanoi(n-1, two, one, three);


}





}


public void move(char x,char y){


System.out.println(x+”–>”+y);


}

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/182914.html原文链接:https://javaforall.net

(0)
上一篇 2022年10月12日 上午8:00
下一篇 2022年10月12日 上午8:16


相关推荐

  • Java 数组定义和访问

    Java 数组定义和访问Java 数组定义和访问

    2026年3月19日
    2
  • 菜鸟教程python3 mysql_MySQL 教程

    菜鸟教程python3 mysql_MySQL 教程MySQL 教程 MySQL 是最流行的关系型数据库管理系统 在 WEB 应用方面 MySQL 是最好的 RDBMS RelationalDa 关系数据库管理系统 应用软件之一 在本教程中 会让大家快速掌握 MySQL 的基本知识 并轻松使用 MySQL 数据库 什么是数据库 数据库 Database 是按照数据结构来组织 存储和管理数据的仓库 每个

    2026年3月16日
    1
  • 分类模型 第1篇:分类模型概述[通俗易懂]

    分类模型 第1篇:分类模型概述[通俗易懂]机器学习主要用于解决分类、回归和聚类问题,分类属于监督学习算法,是指根据已有的数据和标签(分类的类别)进行学习,预测未知数据的标签。分类问题的目标是预测数据的类别标签(classlabel),可以把

    2022年8月2日
    8
  • chinese zodiac signs_asia green real estate

    chinese zodiac signs_asia green real estate输入23 14 3输出Impossible2 1 4 33 4 1 24 3 2 1题解 找规律+构造#include<bits/stdc++.h>using namespace std;const int N = 1001;int ch[N][N];int lowbit(int x){ return x & (-x);}int main(){ int n,k; int T; cin>>T; ..

    2022年8月8日
    7
  • js数据转换为html,JavaScript怎么进行类型转换?「建议收藏」

    js数据转换为html,JavaScript怎么进行类型转换?「建议收藏」JavaScript怎么进行类型转换?下面本篇文章就来介绍一下使用javascript进行类型转换的方法,希望对大家有所帮助。JavaScript变量可以转换为新变量或其他数据类型,分为两种情况:● 隐性转换:通过JavaScript自身自动转换● 显性转换:通过使用JavaScript函数进行转换隐式转换JavaScript中有各种运算符和函数,它们自动将值转换为正确的类型,如Java…

    2022年7月17日
    24
  • C语言提供的将字符串转换为整数的函数_java整型转字符串

    C语言提供的将字符串转换为整数的函数_java整型转字符串本文主要介绍C++语言中,整型转换为字符串类型的方法。1使用to_string函数在c++11标准中,我们可以使用to_string函数,将整型转换为字符串类型。1.1to_string函数介绍to_string函数的用法如下:stringto_string(intval);stringto_string(longval);stringto_string(longlongv…

    2022年10月10日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号