递归 逻辑解释 看完不懂 骂我

# 递归

方法 :其实就是 计划

递归 用白话逻辑思考 , 很简单

比如:

计划 :要去商场购买年货,这个商场有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)
    }
}

posted @ 2021-01-11 14:27  doRust  阅读(309)  评论(0)    收藏  举报