leetcode-45 跳跃游戏II
给定一个非负整数数组,你最初位于数组的第一个位置。
数组中的每个元素代表你在该位置可以跳跃的最大长度。
你的目标是使用最少的跳跃次数到达数组的最后一个位置。
示例:
输入: [2,3,1,1,4]
输出: 2
解释: 跳到最后一个位置的最小跳跃数是 2。 从下标为 0 跳到下标为 1 的位置,跳 1 步,然后跳 3 步到达数组的最后一个位置。
说明:
假设你总是可以到达数组的最后一个位置。
该问题的思路和 leetcode-55 跳跃游戏 的思路类似,关键还是寻找跳跃点;同样是贪心的过程,选择跳跃范围内下次可跳的最远的区域,即可保证跳跃次数最少。
跳跃的过程中动态维护一个下次可跳 的最远区域,当这次达到了可跳点,则更新下一次的跳跃条件。
实现如下:
int jump(vector<int>& nums) {if (nums.size() < 2) {return 0;}int curr = nums[0];//当前的目标区域int pre = nums[0];//下次可跳的最远区域int jump_min = 1;for (int i = 1;i < nums.size(); ++i) {if (i > curr) {//达到了当前的目标区域即可跳jump_min ++;curr = pre;}if (pre < nums[i] + i) { pre = nums[i] + i;}}return jump_min;
}
leetcode-45 跳跃游戏II相关推荐
- Leetcode 45. 跳跃游戏 II
Leetcode 45. 跳跃游戏 II 题目 给你一个非负整数数组 nums ,你最初位于数组的第一个位置. 数组中的每个元素代表你在该位置可以跳跃的最大长度. 你的目标是使用最少的跳跃次数到达数组 ...
- leetcode 45. 跳跃游戏 II 46. 全排列
leetcode 45. 跳跃游戏 II 46. 全排列 45. 跳跃游戏 II 难度中等1273收藏分享切换为英文接收动态反馈 给你一个非负整数数组 nums ,你最初位于数组的第一个位置. 数组中 ...
- LeetCode 45.跳跃游戏II
45.跳跃游戏 II 题目描述 给你一个非负整数数组 nums ,你最初位于数组的第一个位置. 数组中的每个元素代表你在该位置可以跳跃的最大长度. 你的目标是使用最少的跳跃次数到达数组的最后一个位置. ...
- leetcode 45.跳跃游戏 II
一.题意 给出一个非负整数数组 nums ,数组中的每个元素代表在该位置可以跳跃的最大长度.使用最少的跳跃次数到达数组的最后一个位置.假设总是可以到达数组的最后一个位置. 二.解法 贪心算法. 解法一 ...
- LeetCode 45. 跳跃游戏 II(贪心/BFS,难)
文章目录 1. 题目 2. 解题 2.1 贪心 2.2 BFS 1. 题目 给定一个非负整数数组,你最初位于数组的第一个位置. 数组中的每个元素代表你在该位置可以跳跃的最大长度. 你的目标是使用最少的 ...
- leetcode 45跳跃游戏II
跳跃游戏II 核心思想:当前范围内走不到目的地,更新下一个范围.下一个范围是当前范围内能走到的最远点 class Solution {public:int jump(vector<int> ...
- leetcode —— 45. 跳跃游戏 II
给定一个非负整数数组,你最初位于数组的第一个位置. 数组中的每个元素代表你在该位置可以跳跃的最大长度. 你的目标是使用最少的跳跃次数到达数组的最后一个位置. 示例: 输入: [2,3,1,1,4] 输 ...
- Leetcode 45. 跳跃游戏 II (每日一题 20210922)
给你一个非负整数数组 nums ,你最初位于数组的第一个位置.数组中的每个元素代表你在该位置可以跳跃的最大长度.你的目标是使用最少的跳跃次数到达数组的最后一个位置.假设你总是可以到达数组的最后一个位置 ...
- leetcode 45. 跳跃游戏 II 思考分析
题目 给定一个非负整数数组,你最初位于数组的第一个位置. 数组中的每个元素代表你在该位置可以跳跃的最大长度. 你的目标是使用最少的跳跃次数到达数组的最后一个位置. 示例: 输入: [2,3,1,1,4 ...
- LeetCode 45. 跳跃游戏 II Jump Game II
给定一个非负整数数组,你最初位于数组的第一个位置. 数组中的每个元素代表你在该位置可以跳跃的最大长度. 你的目标是使用最少的跳跃次数到达数组的最后一个位置. 示例: 输入: [2,3,1,1,4] 输 ...
最新文章
- 深度学习在三维环境重建中的应用
- eclipse异常关闭,无法启动tomcat解决办法
- The APR based Apache Tomcat Native library
- 消费者最关心的就是你的用户体验,以及保证产品品质,保证价格和服务
- pmp每日三题(2022年2月24日)
- SAP UI5 application - model propagation
- MySQL执行外部sql脚本文件的命令( source命令执行sql )
- 对象过滤某个属性 循环 php_37道PHP面试题(附答案)
- matlab中的[~,m]=size(coord)是什么意思
- jquery java aes_[代码全屏查看]-java、js之间使用AES加密通信数据
- python mongodb 设置密码前一篇ok,csv文件存入mongodb
- Git详解(2)——Git基础
- python 静态变量_python小课堂19 - 面向对象篇(二)
- 详细解析Photoshop10个必学的抠图技巧
- nginx获取代理服务ip及客户端真实ip
- matlab求阶乘函数的代码,matlab阶乘
- 5.4.1. Check Constraints
- 什么是实体-联系图(ER图)
- thinkphp使用dompdf导出pdf(html转pdf)
- R语言中的ggmap包
热门文章
- 完美的隐藏软键盘方法
- Spring.Net Aop
- ORB_SLAM2单目初始化策略
- Codeforces Round #417:E. FountainsSagheer and Apple Tree(树上博弈)
- mysql所有班级名称和人数_mysql数据库优化课程---12、mysql嵌套和链接查询(查询user表中存在的所有班级的信息?)...
- ubuntu chrome java插件_在Ubuntu中为Chrome安装Java插件
- matlab白化滤波,基于预白化方法的降噪预处理技术与流程
- python做运动控制_第一课:用Python操控小龟小车运动
- 字符串数组(就自己做个笔记)
- 如何获取元素在父级div里的位置_前端面试题--元素的BFC特性和实例