// 所谓递归,是指程序调用自身,当然,递归不会无休止地调用下去,它必然有一个出口,当满足条件时程序也就结束了,不然的话,那就是死循环了。
// 提供几个递归实例,有的是从网上找的
// 1、十进制转换二进制
// 2、求1+2+3+...+n的和
// 3、求最大公约数
// 4、求汉诺塔算法
public class Recursion {public static void main(String[] args) {decimalToBinary(103);// 十进制转换二进制// System.out.println(sum(100));// 求和// yueshu(12, 8); // 求最大公约数// hanon(4, 'A', 'B', 'C'); // 求汉诺塔算法}
// 递归方法decimalToBinary,把一个十进制数转换成二进制数public static void decimalToBinary(int num) {if (num == 0) { // 当num=0时,循环结束return;} else {decimalToBinary(num / 2); // 调用递归方法System.out.print(num % 2);}}
// 递归方法sum,求 1+2+...+n 的求和public static int sum(int num) {if (num > 0) {return num + sum(num - 1); // 调用递归方法} else {return 0; // 当num=0时,循环结束}}
//递归方法yueshu,求两个数的最大公约数 ,用两个数的绝对值与这两个数较小的那个一直比较,直到相等为止。public static void yueshu(int num1, int num2) {if (num1 == num2) {System.out.println(num1); // num1=num2时,结束} else {yueshu(abs(num1 - num2), min(num1, num2)); // 调用递归方法}}// 求两个数绝对值public static int abs(int num) {return num > 0 ? num : -num;}// 求两个数较小者public static int min(int num1, int num2) {return num1 > num2 ? num2 : num1;}// 递归方法hanon,求汉诺塔算法public static void hanon(int n, char a, char b, char c) {if (n == 1) {move(1, a, c);// 最后一种情况是,把A柱子上盘子移到C柱子上。return;}hanon(n - 1, a, c, b); // 递归,把n-1个盘子从A 盘上借助C盘移到B盘上move(n, a, c);// 调用move()方法hanon(n - 1, b, a, c);// 递归,把把n-1个盘子从B盘上借助A盘移到C盘上}public static void move(int n, char a, char c) {System.out.println(n + ":" + a + "-->" + c);// 打印移动盘子情况}
}
详细解决方案
JAVA常用递归实例
热度:67 发布时间:2023-10-09 21:45:10.0
相关解决方案
- java 乱码 汉字是 ? 如何转换成汉字
- java web 登录次数限制,该如何解决
- java 工商银行网银支付 B2B的 都亟需什么,需要注意什么
- Java Applet程序从JDK6升级到7时遇到的有关问题
- java web 视频相干
- java 系统单点登录解决方案
- java 获取客户端IP解决办法
- JAVA 后台怎么获得前台页面FCKedit编辑器中的内容以及内容的样式
- java 正则化匹配有关问题
- JAVA WEB导航条,该怎么处理
- java 中Node 有关问题
- 吐了,java Timer 终止不了。
- java web开发解决办法
- 关于 java cast 有关问题,你明白不
- java ftp 下传和上载乱码有关问题
- java web项目上的一些文件
- Hibernate操作数据库 报错java.lang.Integer cannot be cast to java.lang.String如何改
- java struts 文件上载
- java web baidu map开发
- JAVA WEB导航条解决办法
- java 编写ftp上载
- java web中的一个有关问题,困扰小弟我很久了
- java web 与tomcat解决办法
- java web基于j2ee的一些有关问题
- java 内网外网的一个需求,该怎么处理
- jsp 页面 安插ArrayList 报错。为什么,已经加了import="java.util."了呀!
- java dwg 怎样用java把dwg便是aoutcad的格式文件转换成gif,jpg等格式
- 求《Java Web 程序设计与项目实践》解决办法
- java webservice解决方法
- java 与jsp,该怎么解决