递归的例子
来源:互联网 发布:淘宝联盟手机版如何用 编辑:程序博客网 时间:2024/06/06 08:42
每次一看递归,就觉得懂了,但一自己写,就不会了。记几个经典的小例子。
- 一列数的规则如下: 1、1、2、3、5、8、13、21、34 ,求第30位数是多少?使用递归实现
/** * Created by liujx(jiaxing747@163.com). */public class FibonacciSequence { public static int Firbonacci(int n) { if (n<=2) { return 1; } else { return Firbonacci(n-1) + Firbonacci(n-2); } } public static void main(String[] args) { int result = Firbonacci(4); System.out.println(result); }}
- 汉诺塔(又称河内塔)问题其实是印度的一个古老的传说。
开天辟地的神勃拉玛(和中国的盘古差不多的神吧)在一个庙里留下了三根金刚石的棒,第一根上面套着64个圆的金片,最大的一个在底下,其余一个比一 个小,依次叠上去,庙里的众僧不倦地把它们一个个地从这根棒搬到另一根棒上,规定可利用中间的一根棒作为帮助,但每次只能搬一个,而且大的不能放在小的上 面。计算结果非常恐怖(移动圆片的次数)18446744073709551615,众僧们即便是耗尽毕生精力也不可能完成金片的移动了。
要求:输入一个正整数n,表示有n个盘片在第一根柱子上。输出操作序列,格式为“移动 t从 x 到 y”。每个操作一行,表示把x柱子上的编号为t的盘片挪到柱子y上。柱子编号为A,B,C,你要用最少的操作把所有的盘子从A柱子上转移到C柱子上。
public class Hanio { static int count = 0; public static void hanio(int n,String start, String inter, String to) { count++; if (n==1) { System.out.println("从"+start+"到"+to); } else { hanio(n-1,start,to,inter); System.out.println("从"+start+"到"+to); hanio(n-1,inter,start,to); } } public static void main(String[] args) { hanio(2,"A","B","c"); System.out.println(count); }}
阅读全文
0 0
- 递归的例子
- 递归的一些例子
- 递归的例子
- 递归的一个例子
- 递归的小例子
- php递归的例子
- 递归的例子
- 递归(一)几个简单的递归例子
- 一个双递归的例子
- 递归算法的一个例子
- cte递归的小例子
- 递归搜索注册表的例子
- 递归调用的一个例子
- 递归创建文件夹的例子
- 运用递归算法的例子
- 递归算法的一个例子
- oracle 递归查询的例子
- 递归的几个经典例子
- 集成学习之Adaboost
- Java基础之字符串的编码(Encode)和解码(Decode)
- c#数组的操作
- php json 函数使用
- 仿魅思美色视频网站源码开源版
- 递归的例子
- java处理图片base64编码的相互转换
- Busybox 命令大全~~
- 关于Java的File.separator
- Python 读文件代码示例
- C++ 读文件示例代码
- Ubuntu下中文输入法的解决办法
- 【Leetcode】【python】Swap Nodes in Pairs
- Spring-AOP @AspectJ切点函数之@within()和@target