十三 递归的java实现

Posted Heaven of freedom

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了十三 递归的java实现相关的知识,希望对你有一定的参考价值。

任务一、递归初体验:

1.打印hello

2.递归实现循环

 

源代码:

public class TasteRecursion
{
public static void display() //循环打印hello,Beauty
{
System.out.println("hello,Beauty!");
display();
}

public static void cycle(int n)
{
if(n == 0)
return;
else
{
System.out.println(n);
n--;
cycle(n);
}
}


public static void main(String[] args) {
//TasteRecursion.display();
TasteRecursion.cycle(5);
}
}

实现效果图:

任务二:打印数字三角形

原理图:

源代码(包括一般的循环实现和递归实现):

public class Triangle {

public static void cycleSolve(int n) //一般循环实现
{
int total =0;
for(int i=1;i<=n;i++)
{
total =total+i;
}
System.out.println(total);
}

public static int recursionSolve(int n) //递归实现三角形
{
if(n == 1)
return 1;
else
{
return n + recursionSolve(n-1);
}
}



public static void main(String[] args) {
Triangle.cycleSolve(100);
System.out.println(Triangle.recursionSolve(100));
}
}

任务三:递归实现斐布拉契数列:

原理图:

源代码:

public class Feibo {
public static int FeiboCycle(int n) //用递归实现斐布拉契数列
{
if(n == 1)
return 0;
else if(n == 2)
return 1;
else
{
return FeiboCycle(n-1) + FeiboCycle(n-2);
}
}

public static void main(String[] args)
{
System.out.println(Feibo.FeiboCycle(5));
}
}

实现效果图:

 

以上是关于十三 递归的java实现的主要内容,如果未能解决你的问题,请参考以下文章

Java并发编程(十三)-- 线程池实现原理

Java 设计模式系列(十三)模板方法

初学Java IdentityHashMap实现类 三十三

Java基础第十三天总结

JVM高级特性与实践(十三):线程实现 与 Java线程调度

Java学习笔记之十三初探Java面向对象的过程及代码实现