递归的学习

递归是一种解决计算问题的方法,其中解决方案取决于同一类问题的更小子集

说明:

1.自己调用自己,说过说每个函数对应着一种解决方案,自己调用自己意味着解决方案都是一样的

2.每次调用,函数处理的数据会较上次递减(子集),而且最后会递减至无需继续递归

3.内层函数调用(子集处理)完成,外层函数才能算调用成功

//递归遍历
public void loop3(){
    recuision(head);
}

private void recuision(Node curr){//针对某个节点进行的操作
    if (curr==null){//首先进行判断,若为空退出
        return;
    }
    System.out.println("before:"+curr.value);
    recuision(curr.next);//返回下一个节点继续执行
    System.out.println("after"+curr.value);

}

sout与递归函数的先后顺序会导致正序反序打印

before:1
before:2
before:3
before:4
after4
after3
after2
after1
 

你可能感兴趣的:(学习,java,开发语言)