算法很美 7-1 走楼梯 思路超详解+递归&迭代Python实现

题目描述:

有个小孩正在上楼梯,楼梯有n阶台阶,小孩一次可以上1阶、2阶、3阶。请实现一个方法,计算小孩有多少种上楼的方式。

思路
台阶数量 upstairs(n)
1 upstairs(1) = 1 一步
2 upstairs(2) = 2 一步+一步 两步
3 upstairs(3) = 3 一步+一步+一步 一步+两步 两步+一步 三步

由于最大只能走三步,从第四步开始就没有一次性跨上去这样了。四阶楼梯详解
误区!
在思考最后一步之前是在哪个位置的时候,这个位置一定是可以一次直接到终点的!
比如最后一步在1这个位置,就只要思考最后一步可以直接跨三步到4这个终点。而不要思考从1到4有三步还有不同实现方法。

同理:

upstairs(5) = upstairs(4) +  upstairs(3) + upstairs(2) 
upstairs(n) =
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值