70.爬楼梯
2021/12/31 23:07:29
本文主要是介绍70.爬楼梯,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1.Go
//递归 :达到n级楼梯,最后一步要么走1步,要么走2步
走一步时,方法数值f(n-1) 走两步时f(n-2) 这样会超时
方法1:记忆化搜索(借助数组储存数值)
//用哈希或者数组都可以 但是数组更快
func climbStairs(n int) int { //dic:=make(map[int]int,500) dic:=make([]int,500) dic[1]=1 dic[2]=2 for i:=3;i<=n;i++{ dic[i]=dic[i-1]+dic[i-2] } return dic[n] }
2.C++
1.递归 会超时 你相当于每次都有计算n前面数值
class Solution { public: int climbStairs(int n) { if(n==1) return 1; if(n==2) return 2; return climbStairs(n-1)+climbStairs(n-2); } };
2. 记忆化搜索(借助数组储存数值)
class Solution { public: int array[500]; int climbStairs(int n) { array[1]=1; array[2]=2; for (int i=3;i<=n;i++){ array[i]=array[i-1]+array[i-2]; } return array[n]; } };
这篇关于70.爬楼梯的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南