递归代码模板

递归代码模板

在写算法的时候,我们经常会碰到需要使用递归来进行结题的问题。这时候,我们可能没有模板可以参考,如果我们有一套模板可以在心里面作为参考的话,就只需要考虑这次递归需要把哪些递归条件加上就可以了,这时候我们的写代码的速度就会提高很多。

现在的时代,是数据的时代,如何利用好数据来进行更多的规划,以实现更高的收益及更好的程序性能。我们就需要掌握算法,以及数据结构,基础打好了,后面的敲代码心里都有谱了,事半功倍。

下面是递归模板,什么也不要想,记住,死记硬背就完了。

/**
 * ReduceTemplate
 *
 * @author yjh
 * @since 2020/11/23
 */
public class ReduceTemplate {

//    final int MAX_LEVEL = 10;
//
//    public void reduce(int level, int param){
//
//        //终结条件
//        if( level > MAX_LEVEL){
//            //处理并返回
//            return;
//        }
//
//        //处理当前逻辑
//        processCurrentLogic(level, param);
//
//        //往下层递归
//        reduce(level: level+1, newParam);
//
//        //存储或恢复当前状态,可以用来比如进行尾递归
//    }
}

从上面看,普通递归也就是有四个逻辑。记住这四个条件和步骤,就可以在有递归解题的思路的时候直接写出来代码了。

posted @ 2020-11-23 23:58  StivenYang  阅读(290)  评论(0编辑  收藏  举报