1、,大学计算机基础 讨论2,讲解人:,组长:梁辰,小组成员: 罗金龙,刘凯旋,龚煜维,陈昕,刘广丰, 侯长明,闫鹏宇。,指导教师:,成员,提纲,Click the text box to modify text. Click the text box to modify text. Click the text box to modify text. Click the text box to modify text. Click the text box to modify text. Click the text box to modify text. Click the text box
2、to modify text. Click the text box to modify text.,Click the text box to modify text.,提纲,text,text,text,text,问题描述,递归是什么样子,递归与循环的区别,递归思想和递归的含义,问题的开始,问题开始前,我们先来看几幅图片。,递归是什么样子,递归是什么样子,递归的定义,定义 Wiki 1:Recursion is the process of repeating items in a self-similar way. 具体到计算机中去 2: 递归(英语:Recursion),又译为递回,在
3、数学与计算机科学中,是指在函数的定义中使用函数自身的方法。 英文的Recursion从词源上分析只是“re- (again)“ + “curs- (come, happen)“ 也就是重复发生,再次重现的意思。 而对应的中文翻译 ”递归“ 却表达了两个意思:”递“”归“。 这两个意思,正是递归思想的精华所在。从这层次上来看,中文翻译反而更达意。,再看一幅图片,递归是什么样子,one,two,递归,递归是什么样子,#include void Recursion(int depth)printf(“抱着“);if (!depth) printf(“我的小鲤鱼“); else Recursion(-
4、depth); printf(“的我“); int main()printf(“吓得我抱起了n“); Recursion(2);putchar(n); .,递归是什么样子,与循环的区别,如果是循环呢?,举个例子,递归与循环的区别,递归思想,递归就是有去(递去)有回(归来)。 具体来说,为什么可以”有去“? 这要求递归的问题需要是可以用同样的解题思路来回答类似但略有不同的问题(上面例子中的那一把钥匙可以开后面门上的锁),递归思想,为什么可以“有回”?,这要求这些问题不断从大到小,从近及远的过程中,会有一个终点,一个临界点,一个baseline,一个你到了那个点就不用再往更小,更远的地方走下去的点,然后从那个点开始,原路返回到原点。,递归的含义,一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。递归的能力在于用有限的语句来定义对象的无限集合。,THANK YOU 欢迎老师和同学提问,