当前位置: 首页 > wzjs >正文

by最新域名查询培训推广 seo

by最新域名查询,培训推广 seo,苏州做学校网站的,小程序到哪里去找LeetCode 热题 100_爬楼梯(81_70_简单_C) 题目描述:输入输出样例:题解:解题思路:思路一(动态规划): 代码实现代码实现(思路一(动态规划&#xff0…

LeetCode 热题 100_爬楼梯(81_70_简单_C++)

    • 题目描述:
    • 输入输出样例:
    • 题解:
      • 解题思路:
        • 思路一(动态规划):
      • 代码实现
        • 代码实现(思路一(动态规划)):
        • 以思路一为例进行调试

题目描述:

假设你正在爬楼梯。需要 n 阶你才能到达楼顶。

每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?

输入输出样例:

示例 1:
输入:n = 2
输出:2
解释:有两种方法可以爬到楼顶。

  1. 1 阶 + 1 阶
  2. 2 阶

示例 2:
输入:n = 3
输出:3
解释:有三种方法可以爬到楼顶。

  1. 1 阶 + 1 阶 + 1 阶
  2. 1 阶 + 2 阶
  3. 2 阶 + 1 阶

提示:
1 <= n <= 45

题解:

解题思路:

思路一(动态规划):

1、这道题最主要的是分析出怎么解决爬楼梯,能否找到一定的规律。们发现,当我们爬第n层台阶的时候可以从n-1层台阶或n-2层台阶爬上来。
① 当楼梯数n=1时 有1种方法:1
② 当楼梯数n=2时 有2种方法:1+1,2
③ 当楼梯数n=3时 有3种方法:1+1+1,2+1;1+2。可以转换成从n=1爬2个台阶上来,和n=2爬1层台阶上来。
④ 当楼梯数n=4时 有5种方法:1+1+1+1,2+1+1,1+2+1;1+1+2,2+2。可以转换成从n=2爬2个台阶上来,和n=3爬1层台阶上来。
⑤ 我们发现f(n)=f(n-1)+f(n-2),正好符合斐波那契数列。

2、复杂度分析:
① 时间复杂度:O(n)。从第一层爬到第n层。
② 空间复杂度:O(1)。

代码实现

代码实现(思路一(动态规划)):
class Solution {
public:int climbStairs(int n) {// 初始化:// a = 1:表示爬到第 0 阶(地面)的方式数为 1// b = 1:表示爬到第 1 阶的方式数为 1// sum = 1:用于计算当前计算的阶梯方式数int a = 1, b = 1, sum = 1;// 循环直到 n 减少到 1// 计算从第 2 阶到第 n 阶的方式数,依次更新 a 和 b 的值while (n - 1) {// sum 存储爬到当前阶数(第 n 阶)的方式数// 当前阶数的方式数等于爬到前一阶(a)和前两阶(b)的方式数之和sum = a + b;// 更新 a 和 b:// a 更新为 b,表示爬到第 n 阶的方式数a = b;// b 更新为 sum,表示爬到下一个阶数(第 n+1 阶)的方式数b = sum;// 每次循环将 n 减少 1,直到 n 为 1 时退出循环--n;}// 返回 b,最终它存储的是爬到第 n 阶的方式数return b;}
};
以思路一为例进行调试
#include<iostream>
#include<vector>
using namespace std;class Solution {
public:int climbStairs(int n) {// 初始化:// a = 1:表示爬到第 0 阶(地面)的方式数为 1// b = 1:表示爬到第 1 阶的方式数为 1// sum = 1:用于计算当前计算的阶梯方式数int a = 1, b = 1, sum = 1;// 循环直到 n 减少到 1// 计算从第 2 阶到第 n 阶的方式数,依次更新 a 和 b 的值while (n - 1) {// sum 存储爬到当前阶数(第 n 阶)的方式数// 当前阶数的方式数等于爬到前一阶(a)和前两阶(b)的方式数之和sum = a + b;// 更新 a 和 b:// a 更新为 b,表示爬到第 n 阶的方式数a = b;// b 更新为 sum,表示爬到下一个阶数(第 n+1 阶)的方式数b = sum;// 每次循环将 n 减少 1,直到 n 为 1 时退出循环--n;}// 返回 b,最终它存储的是爬到第 n 阶的方式数return b;}
};int main(){Solution s;cout<<s.climbStairs(7);return 0;
}

LeetCode 热题 100_爬楼梯(81_70)原题链接
欢迎大家和我沟通交流(✿◠‿◠)

http://www.dtcms.com/wzjs/289551.html

相关文章:

  • 独立站建站详细步骤app下载免费安装
  • 安徽旅游在线网站建设枸橼酸西地那非片功效效及作用
  • 济南优化网站排名广告优化师培训
  • 黑群晖做网站网络营销的方式有十种
  • 免费 网站 空间天津seo排名扣费
  • 网页设计个人网站怎么做网站推广服务外包
  • 品牌网站开发公司西安区seo搜索排名优化
  • 差旅网站建设市场调研的内容
  • 网站权重怎么刷seo权重优化
  • 十大外贸论坛seo待遇
  • 衡水网站建费用东莞网站提升排名
  • 庭院景观设计北京网站seo
  • 前沿的设计网站广东疫情防控措施
  • 如何在国外网站上做外贸windows优化软件哪个好
  • 公司网站建设西安河南品牌网站建设
  • 漳州住房和城乡建设部网站网络推广服务
  • 四川网站开发公司网站推广怎么弄
  • wordpress 珠宝信息如何优化上百度首页公司
  • wordpress 添加购买按钮百度关键词网站排名优化软件
  • 国际b2b网站大全草根seo视频大全
  • 福州网站建设求职简历西地那非片能延时多久
  • 花生壳做网站需要备案市场营销策划方案案例
  • 官网网站源码友情链接检测的特点
  • 公司电商网站开发合同推广平台软件有哪些
  • app网站的电话是什么百度推广账户优化方案
  • ps做素材下载网站外贸企业网站推广
  • 怎么做网站兼容性测试查网站权重
  • 河南网站建设服务广告电话
  • 政府网站建设督查报告电商网站订烟平台
  • 做图片网站 服务器如何做网络推广推广