爬楼梯(C++)
爬楼梯(C++)
作者简介:一名后端开发人员,每天分享后端开发以及人工智能相关技术,行业前沿信息,面试宝典。座右铭:未来是不可确定的,慢慢来是最快的。个人主页:极客李华-CSD博客爬楼梯假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?示例 1:代码语言:javascript代码运行次数:0运行复制输入: n = 2
输出: 2
爬楼梯(C++)
- 作者简介:一名后端开发人员,每天分享后端开发以及人工智能相关技术,行业前沿信息,面试宝典。
- 座右铭:未来是不可确定的,慢慢来是最快的。
- 个人主页:极客李华-CSD博客
爬楼梯
假设你正在爬楼梯。需要 n
阶你才能到达楼顶。
每次你可以爬 1
或 2
个台阶。你有多少种不同的方法可以爬到楼顶呢?
示例 1:
代码语言:javascript代码运行次数:0运行复制输入: n = 2
输出: 2
解释: 有两种方法可以爬到楼顶。
1. 1 阶 + 1 阶
2. 2 阶
示例 2:
代码语言:javascript代码运行次数:0运行复制输入: n =
输出:
解释: 有三种方法可以爬到楼顶。
1. 1 阶 + 1 阶 + 1 阶
2. 1 阶 + 2 阶
. 2 阶 + 1 阶
提示:
1 <= n <= 45
我的代码:
代码语言:javascript代码运行次数:0运行复制class Solution {
private:
// 递归想要优化的话 关键是这里 动态规划
long long int dp[50];
public:
// 经典递归规律题
int climbStairs(int n) {
// 递归最后一组数据过不了超时
// if(n <= 2)
// {
// dp[n] = n;
// return n;
// }
// if (dp[n] != 0) return dp[n];
// return climbStairs(n - 1) + climbStairs(n - 2);
if (n <= 2) return n;
int left = 1, right = 2;
for (int i = ; i <= n; ++ i)
{
int t = left;
left = right;
right = t + right;
}
return right;
}
};
对应我的掘金文章:
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2024-02-01,如有侵权请联系 cloudcommunity@tencent 删除c++人工智能博客递归后端#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格
上传时间: 2025-07-20 14:24:01
上一篇:x 的平方根(C++)
推荐阅读
留言与评论(共有 17 条评论) |
本站网友 邢育森 | 16分钟前 发表 |
面试宝典 | |
本站网友 北京商铺租赁 | 20分钟前 发表 |
如有侵权请联系 cloudcommunity@tencent 删除前往查看c++人工智能博客递归后端 | |
本站网友 眼角纹 | 16分钟前 发表 |
right = 2; for (int i = ; i <= n; ++ i) { int t = left; left = right; right = t + right; } return right; } };对应我的掘金文章:本文参与 腾讯云自媒体同步曝光计划 | |
本站网友 硬度测量 | 28分钟前 发表 |
面试宝典 | |
本站网友 山东财政网 | 12分钟前 发表 |
需要 n 阶你才能到达楼顶 | |
本站网友 山语城 | 8分钟前 发表 |
座右铭:未来是不可确定的 | |
本站网友 淮海西路 | 22分钟前 发表 |
行业前沿信息 | |
本站网友 雅图在线影院 | 5分钟前 发表 |
个人主页:极客李华-CSD博客爬楼梯假设你正在爬楼梯 | |
本站网友 抽脂手术费 | 19分钟前 发表 |
慢慢来是最快的 | |
本站网友 桑果的功效 | 19分钟前 发表 |
个人主页:极客李华-CSD博客爬楼梯假设你正在爬楼梯 | |
本站网友 燕麦片的功效 | 30分钟前 发表 |
每次你可以爬 1 或 2 个台阶 | |
本站网友 天然气取暖 | 25分钟前 发表 |
座右铭:未来是不可确定的 | |
本站网友 注射美容 | 16分钟前 发表 |
// 经典递归规律题 int climbStairs(int n) { // 递归最后一组数据过不了超时 // if(n <= 2) // { // dp[n] = n; // return n; // } // if (dp[n] != 0) return dp[n]; // return climbStairs(n - 1) + climbStairs(n - 2); if (n <= 2) return n; int left = 1 | |
本站网友 人名币兑日元 | 22分钟前 发表 |
每次你可以爬 1 或 2 个台阶 | |
本站网友 咸宁学院官网 | 0秒前 发表 |
需要 n 阶你才能到达楼顶 | |
本站网友 奥吉娜 | 23分钟前 发表 |
慢慢来是最快的 |