DataStrutrue 递归基础
前言:
递归, 最简单通俗的说法就是自己调用自己,除了这个,你还知道其他吗?
提问:
1,递归是什么?
2,递归分为几类?
3, 递归都是怎么用的?
4,用了递归有什么好处?
5,迭代和递归 有什么区别?
疑惑解答:
1,递归是什么?
解答:程序调用自身的编程技巧成为递归(Recursion) ,递归作为一种算法在程序设计语言中广泛运用.
2,递归分为几类?
解答: 递归还有分类? 不就是自己调用自己吗?
递归: (1)直接递归(调自己)
(2)间接: 调A--->B--->A
3, 递归都是怎么用的?
解答: 递归主要是用栈来实现运用的.
4,用了递归有什么好处?
解答:
优点: 代码简洁,代码量少
缺点: 占空间大, 要保护线程, 效率低
5,迭代和递归 有什么区别?
解答: 迭代和递归都是循环的一种, 迭代是函数内某段代码实现的循环,而递归主要是重复调用自身实现循环.
注意: 迭代与普通循环区别是, 循环代码中参与变量的同时是保存结果的变量, 当前保存的结果作为下一次循环的初始值.