LeetCode:70.爬楼梯

前言:好家伙,一直以为动态规划是啥高大上的,解释那么多,在我看来不过是找规律罢了,

写那么多"专业术语"咋看咋像糊弄人的 (手动扶额)

另外,通项公式虽然抽象还能接受,但是矩阵快速幂是什么鬼?

70. 爬楼梯 - 力扣(LeetCode)

目录

题目:

思路,分析:

代码+注释:

每日表情包:


题目:

思路,分析:

一眼斐波那契数列, 但有时间限制,搞不了递归,那就搞循环,(从前往后的加,不搞递归的大量且重复的计算)

官方题解叫这循环叫滚动数组,思考方式叫动态规划……

力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 官方题解有动画演示滚动数组

代码+注释:

int climbStairs(int n) {//很容易和斐波那契数列联系起来//主要表现为:设台阶数为a,(a>=2)每多一个台阶,即(a + 1)个台阶的走法//等于a个台阶的走法加a-1个台阶的走法//原因是,a个台阶的走法+走一步完成最后一个台阶,//和a-1个台阶的走法+走最后两台阶(如果说最后两个台阶都走一步那可以归到a走法+完成最后一个台阶的队列里)//这个题有时间限制,递归用不了if(n == 1){return 1;}if(n == 2){return 2;}int tmp1 = 1, tmp2 = 2, Return = 0;n -= 2;while(n--){Return = tmp1 + tmp2;tmp1 = tmp2;tmp2 = Return;}return Return;
}

每日表情包:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/467393.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

接口测试06 -- pytest接口自动化封装Loggin实战

1. 接口关键字封装 1.1 基本概念 接口关键字封装是指:将接口测试过程中常用的操作、验证封装成可复用的关键字(或称为函数、方法),以提高测试代码的可维护性和可复用性。 1.2 常见的接口关键字封装方式 1. 发送请求:封装一个函数,接受参数如请求方法、URL、请求头、请求…

游泳耳机排行榜前十名,精选四款热门游泳耳机排行榜品牌推荐

游泳,一项被誉为“最全面的运动”的健身方式。无论是对于年轻人还是中老年人,无论体重大小,游泳都能带来无与伦比的益处。在水中的阻力是地面上的十二倍,这使得游泳成为了一种全身性的锻炼方式,能够让身体的每一块肌肉…

宽带高效非对称连续J/F-1模式Doherty 功率放大器设计(2023.11 MTT)-从理论到ADS版图

宽带高效非对称连续J/F-1模式Doherty 功率放大器设计(2023.11 MTT)-从理论到ADS版图 这个文章实现的效果非常好,非常值得大家去阅读复现(见前言介绍),但是我复现出现了一点困难,效果调不到那么好(带宽只是…

【教程】最新使用Shamrock搭建QQ机器人

转载请注明出处:小锋学长生活大爆炸[xfxuezhang.cn] 背景介绍 官方原版Shamrock的作者已经删库跑路了,所以我们使用这个:OpenShamrock 文档在这里,但访问可能需要点魔法:快速开始指南 步骤也简单,这里以无R…

【在Linux世界中追寻伟大的One Piece】Linux是从哪里来的?又是怎么发展的?基本指令你知道哪些?

目录 1 -> Linux背景 1.1 -> Linux发展史 1.1.1 -> UNIX发展历史 1.1.2 -> Linux发展历史 1.2 -> 开源 1.3 -> 官网 1.4 -> 企业应用现状 1.5 -> 发行版本 1.6 -> OS概念,定位 2 -> Linux下基本指令 2.1 -> Is指令 2…

假期作业 10

1.整理磁盘操作的完整流程,如何接入虚拟机,是否成功识别,对磁盘分区工具的使用,格式化,挂载以及取消挂载 U盘接入虚拟机 在虚拟机--->可移动设备--->找到U盘---->连接 检测U盘是否被虚拟机识别 ls /dev/s…

Solidworks:从草图到工程图纸,掌握正确的工作流程

1. 草图不及太在意构造线和尺寸标注的美观性,只要确保模型尺寸正确即可 因为草图不是最终输出的,这个阶段的工作重点是建立尺寸正确的实体模型,所以不要在意构造线和尺寸标注是否美观。 2. 工程图纸中标注尽量按照操作提示放置位置 工程图…

【Chrono Engine学习总结】5-sensor-5.1-sensor基础并创建一个lidar

由于Chrono的官方教程在一些细节方面解释的并不清楚,自己做了一些尝试,做学习总结。 1、Sensor模块 Sensor模块是附加模块,需要单独安装。参考:【Chrono Engine学习总结】1-安装配置与程序运行 Sensor Module Tutorial Sensor …

springboot182基于springboot的网上服装商城

简介 【毕设源码推荐 javaweb 项目】基于springbootvue 的 适用于计算机类毕业设计,课程设计参考与学习用途。仅供学习参考, 不得用于商业或者非法用途,否则,一切后果请用户自负。 看运行截图看 第五章 第四章 获取资料方式 **项…

深入理解梯度加权类激活热图(Grad-CAM)

深入理解梯度加权类激活热图(Grad-CAM) 项目背景与意义 在深度学习领域,模型的预测能力往往是黑盒子,难以解释。梯度加权类激活热图(Grad-CAM)作为一种可解释性技术,能够帮助模型开发者更好地…

Linux C/C++ 原始套接字:打造链路层ping实现

在C/C中,我们可以使用socket函数来创建套接字。我们需要指定地址族为AF_PACKET,协议为htons(ETH_P_ALL)来捕获所有传入和传出的数据包。 可以使用sendto和recvfrom函数来发送和接收数据包。我们需要构建一个合法的链路层数据包,在数据包的头…

证明之圆的分割

圆的分割 “数学证明问题:圆上点连线分割区域总数的倍增推理” 既然我已经谈到了数学证明的本质,现在让我们回到本系列开始时的问题。圆上有n个点,我们用直线将这些点两两连结起来,希望能够表明这些直线所分割出的区域总数是 2 …