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

网站怎么做分页必应搜索引擎入口

网站怎么做分页,必应搜索引擎入口,杭州网站关键词推广,广州网站优化关键词公司目录 题目 解法 Go Java Python 代码地址:leetcode: 每日leetcode刷题 题目 题号70. 爬楼梯 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 示例 1: 输入&#xff…

目录

题目

解法

Go

Java

Python


代码地址:leetcode: 每日leetcode刷题

题目

题号70. 爬楼梯
假设你正在爬楼梯。需要 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 阶

解法

Go

package mainimport "fmt"//方法一 递归 使用map求解出的结果不用重复求解
//满足公式
//F(1) = 1
//F(2) = 2
//F(n) = F(n-1) + F(n-2) (n>=2)
var mp = make(map[int]int)
func climbStairs1(n int) int {if n <= 2 {return n}if _, ok := mp[n]; ok {return mp[n]} else {rst := climbStairs1(n-1) + climbStairs1(n-2)mp[n] = rstreturn rst}
}// 方法二 使用for循环,用两个变量记录上次和上上次的值,时间复杂度O(n)
func climbStairs(n int) int {if n <= 2 {return n}rst := 0pre := 2prepre := 1for i := 3; i <= n; i++ {rst = pre + prepreprepre = prepre = rst}return rst
}func main() {fmt.Println(climbStairs(7))
}

Java

package org.example;import java.util.HashMap;
import java.util.Map;public class ClimbingStairs {// 方法一 递归 使用map求解出的结果不用重复求解// 满足公式// F(1) = 1// F(2) = 2// F(n) = F(n-1) + F(n-2) (n>=2)private Map<Integer, Integer> mp = new HashMap<Integer, Integer>();public int climbStairs1(int n) {if (n == 1) {return 1;}if (n == 2) {return 2;}if (null != mp.get(n)) {return mp.get(n);} else {int val = climbStairs1(n - 1) + climbStairs1(n - 2);mp.put(n, val);return val;}}// 方法二 使用for循环,用两个变量记录上次和上上次的值,时间复杂度O(n)public int climbStairs(int n) {if (n <= 2) {return n;}int rst = 0;int prepre = 1;int pre = 2;for (int i = 3; i <= n; i++) {rst = pre + prepre;prepre = pre;pre = rst;}return rst;}// 70. 爬楼梯public static void main(String[] args) {ClimbingStairs main = new ClimbingStairs();System.out.println(main.climbStairs(7));}}

Python

# 方法一 递归 使用map求解出的结果不用重复求解
# 满足公式
# F(1) = 1
# F(2) = 2
# F(n) = F(n-1) + F(n-2) (n>=2)
dic = {}
def climbStairs1(n):if n == 1:return 1if n == 2:return 2if n in dic:return dic[n]else:val = climbStairs1(n - 1) + climbStairs1(n - 2)dic[n] = valreturn val# 方法二 使用for循环,用两个变量记录上次和上上次的值,时间复杂度O(n)
def climbStairs(n):if n == 1:return 1if n == 2:return 2count = 0prepre = 1pre = 2for i in range(3, n + 1):count = prepre + preprepre = prepre = countreturn countif __name__ == '__main__':print(climbStairs(3))

http://www.yidumall.com/news/33175.html

相关文章:

  • 做二手手机交易网站2022年五月份热点事件
  • 网上下的网站模版后门seo关键词推广优化
  • 修改公司网站搜索引擎优化的含义和目标
  • 云南省中国建设工程造价管理协会网站免费的大数据分析平台
  • 有哪些做的很漂亮的网站广告联盟平台自动赚钱
  • 咨询公司ppt重庆seo排名方法
  • 做网站需要了解的内容图片外链在线生成网址
  • wordpress 问号热狗seo顾问
  • 快速开发网站网推软件有哪些
  • 临沂网站制作培训大连网站开发公司
  • 工程建设招标中心网站阿里巴巴友情链接怎么设置
  • 国内有哪些做卡通素材的网站长沙网站seo
  • 建电子商务网站费用做网络推广有前途吗
  • 深圳著名设计网站大全西地那非片
  • 知名b2b网站一个具体网站的seo优化
  • 佳木斯城乡建设局网站网络服务包括
  • 做非法网站判什么邢宁波好的seo外包公司
  • 封面型网页网站有哪些郑州疫情最新动态
  • 开发app商城软件的公司网站推广优化方案
  • 产品推广方案范本优化设计一年级下册数学答案
  • 微信打不开网站网站站内推广怎么做
  • 如何自己做网站一年赚一亿百度推广怎么收费的
  • 网站建设免费模版手机关键词排名优化
  • 做满屏网站的尺寸电脑编程培训学校
  • 濮阳网站建设哪里便宜企业网站建设方案范文
  • 搭建网站教程视频营销管理
  • 做网站 大文件b站推广入口
  • 中国林业工程建设网站泉州网站建设
  • 网站备案回访问题郑州seo优化大师
  • html5 手机网站 模板seo是什么意思啊