简单递归
婷婷T
Bug层出不穷,人生永无止境
展开
-
递归求汉诺塔问题Java
/*汉诺塔问题--将1~n从A移动到B,C作为辅助; * 等价于: * 1.把1~n-1移动到C,A作为源,B为辅助 * 2.把n从A移动到B * 3.把1-n从C移动到B,A为辅助。 */public class Main { public static void main(String[] args) { HanoiTower(3,"A","B","C"); }//n为...翻译 2019-03-20 17:24:03 · 569 阅读 · 0 评论 -
递归求阶乘Java
递归设计经验 -找重复 -找变化 -找出口 public class Main{ public static void main(String[] args){ int res=f(10); System.out.println(res);//3628800 } //找变化:变化的量应该作为参数 pub...翻译 2019-03-13 15:38:19 · 275 阅读 · 0 评论 -
递归打印i到j (Java)
public class Main{ public static void main(String[] args){ f(1,10);//12345678910 } public static void f(int i,int j){ //找出口 if(i>j) return; //找重复 ...翻译 2019-03-13 15:47:33 · 371 阅读 · 0 评论 -
递归数组元素求和Java
递归设计经验 -找重复 -找变化 -找出口 public class Main{ public static void main(String[] args){ int arr[]={1,2,3,4,5}; int res=f(arr,0); System.out.println(res);//15 } //找变化,变...翻译 2019-03-13 15:55:07 · 1256 阅读 · 1 评论 -
递归反转字符串Java
递归设计经验 -找重复 -找变化 -找出口 public class Main{ public static void main(String[] args){ System.out.println(f("abc",2));//cba } //找变化,变化的数作为参数,end不断向前移动 private static String ...翻译 2019-03-13 16:03:35 · 1300 阅读 · 0 评论 -
递归求斐波那契数列Java
在重复中找变化,在变化中找重复递归分解为:直接量+小规模子问题;也可分解为:多个小规模子问题;1,1,2,3,5,8,13当n=1,2时 f(n)=1;当n>3时f(n)=f(n-1)+f(n-2)public class Main{ public static void main(String[] args){ int res=fib(5);...翻译 2019-03-13 16:15:07 · 334 阅读 · 0 评论 -
递归求最大公约数Java
写出递归公式:f(m,n)=f(n,m%n)public class Main{ public static void main(String[] args){ int res=gcd(2,12);//2 System.out.println(res); } //辗转相除法求最大公共数 public static int gcd(int m,in...翻译 2019-03-13 16:24:59 · 1426 阅读 · 0 评论 -
插入排序递归形式Java
原问题:对数组的0-倒数第一个元素排序缩小规模:对数组的0-倒数第二个元素,这部分排序然后把最后一个元素插入到这个有序的部分中import java.util.Arrays;public class Main { public static void main(String[] args){ int arr[]= {9,6,5,8,4,7,1,3,2}; insert...翻译 2019-03-13 16:42:14 · 1477 阅读 · 0 评论