java 请举个例子讲讲什么是递归方法吧.

Python026

java 请举个例子讲讲什么是递归方法吧.,第1张

在数据结构中,提到树的遍历,你会想到用什么方法呢?

代码不给你,给你讲思想,这样比给你直接的代码,你会理解的更深。

从根开始访问。如果有左子树的话就会拿左子树再当一个根。再去看这个根有没有左子树。如果没有看右子树。如果右子树有的话,就拿这个根上左子树的右子树去当根,同样还是看它有没有子树。

你想反复的解决同样一个问题。但是这个问题的已知条件是上一次执行这个问题的结果就要考虑到它了!

一个类的定义方法:

public class Node

{

int value

Node next

以下有一些set,get方法及构造方法

}

一个类的成员是当前类

一个方法:

public int f(int n)

{

if(n<=1)

return 1

else

return n+f(n-1)

}

以上是求1-n的累加

该方法调用了该方法自己

public static int pro1(int i)

{

if (i == 2)

return 2

else

return i*(pro1(i-1))

}

public static int pro2(int i)

{

if (i == 1)

return 1

else if(i%2 == 0)

return pro2(i-1)

else if(i%2 == 1)

return pro1(i)+pro2(i-2)

else

return 0

}

public static void main(String []args){

int i = pro2(6)

System.out.println(i)

}

分别是2个递归函数,你的问题直接调用 pro2(7)或者pro2(8)都行