老鼠走迷宫(较为复杂的递归问题)(附个人创作的内存流程图)

本文解释了在编程中,递归函数findWay如何在数组arr中寻找全为2的可走路线。当遇到arr[6][5]=2时,虽然已赋值,但还需执行后续递归判断,直到所有可能路径都被探索并返回true。这个过程涉及对递归终止条件的理解和控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

注意:当递归进行到最后一张图的标记圈内时,即使已经将arr[6][5]赋值为2,但还需要执行

if(findWay(arr,i +1,j)){

    return true;

}

使程序继续进入新的递归,再执行class T中的第一个if判断语句

if(arr[6][5] == 2){
            return true;

}

此时才是递归的最后一步,最终如最后一张图蓝色箭头所示,不断的return true,直到返回至main函数中,出现一条全为2的可走路线

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值