递归 逻辑解释 看完不懂 骂我
# 递归
方法 :其实就是 计划
递归 用白话逻辑思考 , 很简单
比如:
计划 :要去商场购买年货,这个商场有6层楼。 6楼衣服 5楼鞋 4楼手机 3楼 床单 2 楼 首饰 1楼超市
问题:我们决定先去6楼 ,这样我们可以轻松一点,不用拎着东西去6楼 在拎着下来,是吧
到达6楼
我么要干的事就是买东西吧,我已经计划好 每层都要买,
选购并返回: 计算 总价格 是不是在一楼 收银处 我不能买一件就去结算 在去买 在结算,所以我带着一起去
6楼 :选衣服 并 拎着衣服去 5楼
5楼:选鞋子 并 拎着 衣服 和 鞋子 去4楼
4楼:选手机 并 拎着 衣服 鞋子 手机 去3楼
3楼:选床单 并 拎着 衣服 鞋子 手机 床单 去2楼
2楼:选首饰 并 拎着 衣服 鞋子 手机 床单 首饰 去1楼
1楼:选食品 并 拎着 衣服 鞋子 手机 床单 首饰 食品 去哪里?????
最后 1层了 我们 购买任务完成了。
将所有 东西 送回家
代码为什是英文不是中文,显然是有人定义的,我们可以用中文创建递归函数如下
public static 得到什么东西 购买商品( 先去哪一层开始购买 ){
如果(到了1层){ //说明我们已经一层一层的选购了我们的商品,并带下来了
结帐:已经购买完毕,
return 购买的物品
}否则{ //说明 还没到达1层 ,继续购买 完了 去下一层,
//到1层 我们是不是 计划完成,这里就 不在购买计划了。这里就没有了
继续执行 购买商品计划(去 楼层-1)
}
}
休息的久了就会Rust

浙公网安备 33010602011771号