美文网首页
递归其实很可爱

递归其实很可爱

作者: define南拳 | 来源:发表于2017-11-07 21:30 被阅读0次

其实递归我们经常用

但是到底如何定义递归?

到底什么情况下使用递归?

递归能将复杂问题简单化,但是递归的缺点又是什么呢?


带着问题我们先来看两个经典案例:

栗子1

从前有座山,山上有座庙,庙里有个老和尚,在给小和尚讲故事,讲的什么呢?

从前有座山,山上有座庙,庙里有个老和尚,在给小和尚讲故事,讲的什么呢?

从前有座山,山上有座庙,庙里有个老和尚,在给小和尚讲故事,讲的什么呢?

从前有座山,山上有座庙,庙里有个老和尚,在给小和尚讲故事,讲的什么呢?

讲的是一个路边的野花你不要采~

栗子2

可爱的递归

int 抱起(int num) {

        if(num=1) {

        抱起小鲤鱼;

}else {

        抱起(num-1);

        }

}



呐,以上两个栗子清晰又通俗的解释了递归,我们现在总结一下

1.递归就是重复的做同一件事情

2.递归要有一个结束条件

    重复归重复,总要有个头啊,一直重复要累死了,也就是说:

    “路边的野花不要采”和“抱起小鲤鱼”这两个都是结束条件


好了,来点官方解释

递归的原理就是数学归纳法

1.证明当n= 1时命题成立。

2.假设n=m时命题成立,那么可以推导出在n=m+1时命题也成立。(m代表任意自然数)


优缺点?看下边的demo吧~

递归举例子

相关文章

  • 递归其实很可爱

    其实递归我们经常用 但是到底如何定义递归? 到底什么情况下使用递归? 递归能将复杂问题简单化,但是递归的缺点又是什...

  • python---基本知识20之递归函数&函数作用域

    递归函数其实不是编程里面所定义的函数,而是数学里面的递归,传递的是一种规律,所以叫递归函数; 我们写递归函数,其实...

  • 236. 二叉树的最近公共祖先

    递归其实很迷的在于。你不知道他在哪做的判断处理其实判断处理在第一行= =。。

  • 371. 用递归打印数字

    描述 用递归的方法找到从1到最大的N位整数。 注意事项 用下面这种方式去递归其实很容易: 但是这种方式会耗费很多的...

  • 父亲节,我只想我赚钱的速度快于爸爸老去的速度!

    爸爸一点都不可爱, 但是,爸爸又很可爱; 爸爸很粗心, 其实,爸爸又很细心; 爸爸很吵, 其实,爸爸也很安静; 爸...

  • Angular 的copy方法源码解析

    转 其实这段代码的逻辑还是很清楚,只在 stackSource 和 stackDest 加上递归,会稍稍让人晕乎。...

  • 递归

    1. 何为递归? 递归在我们的生活中其实很常见。假设你去电影院看电影,黑漆漆一片,你不知道自己来到了第几排,于是你...

  • Javascript的函数递归

    递归是什么? 想个标题已经让我很纠结了,究竟是函数递归还是递归函数? 看了下MDN的说明是:** 函数可以被递归,...

  • Java中的递归

    什么是递归? 函数直接或间接调用自身的过程称为递归,而相应的函数称为递归函数。使用递归算法,可以很容易地解决某些问...

  • 递归

    定义 递归在程序语言中简单的理解是:方法自己调用自己。递归其实和循环是非常像的,循环都可以改写成递归,递归未必能改...

网友评论

      本文标题:递归其实很可爱

      本文链接:https://www.haomeiwen.com/subject/ityhmxtx.html