ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

C++学习笔记系列2-11

C++学习笔记系列2-11

递归函数

递归函数在一些循环逻辑会频繁使用,它的特点有点像:while循环,但它的主旨就是“函数自己调用自己”,通过它的特点,我们可以了解,递归也是需要有条件限制,否则就会进入“死循环”。这边是我对递归的比较简单化的理解。

下面我写一个递归函数的代码,用代码逻辑展示一下递归。

#include <iostream>

using namespace std;

void Func (int a)

{

cout<< a << " ";

a++;

if ( a > 10 ){

return;

}

Func ( a ) ; // 自己调用自己

}

int main ()

{

int a = 0;

Func ( a );

}

输出:0 1 2 3 4 5 6 7 8 9 10

上面这个案例就是最简单的递归函数,我们看到函数体里面对传入的变量 a 进行输出,然后进行“自增”运算,再然后进入 if 语句判断,当不满足 a > 10 时,下面就继续调用函数自身,即:Func(a),同时再次传入 a ,a 的值不断变化,但只要不满足 if 条件就调用自身,这就形成了递归逻辑。但是一旦它满足 if 语句的条件,就执行 if 里面的逻辑,通常是通过return跳出函数避免“死循环”。它和while很像,但是它是一个函数,而while是一个语法。

递归函数在学习树形结构时会起到非常重要的作用,所以要掌握它的逻辑。在日常代码语句中,在能使用它的地方可以多思考,多应用,掌握它的运行规律,为之后数据结构学习提前铺垫基础。

返回列表