55. Jump Game
来源:互联网 发布:儿童绘画软件 编辑:程序博客网 时间:2024/06/16 06:10
55. Jump Game
题目描述:
Given an array of non-negative integers, you are initially positioned at the first index of the array.
Each element in the array represents your maximum jump length at that position.
Determine if you are able to reach the last index.
For example:
A = [2,3,1,1,4]
, return true
.
A = [3,2,1,0,4]
, return false
.
难度:medium
题目中数组值表示可以jump的最大范围,从第一个位置开始,能否jump到能到达最后一个位置。
解题思路:
可用贪心算法求本题。
用一个数 reach 表示能到达的最远的范围,在第一个位置规定的reach范围一步步走下去,如果发现在 reach 范围之内某处能达到的范围大于 reach,
那么我们就用更大的范围来替换掉原先的 reach,这样一个局部的最优贪心策略,在全局看来也是最优的,因为 局部能够到达的最大范围也是全局能够到达的最大范围。
class Solution {public: bool canJump(vector<int>& nums) { int reach = nums[0]; for (int i = 1; i < nums.size() && i <= reach; i++) { reach = max(reach, nums[i] + i); } return reach >= nums.size() - 1; }};
阅读全文
0 0
- 55. Jump Game && 45. Jump Game II
- 55. Jump Game. 45. Jump Game II
- [LeetCode]55.Jump Game
- LeetCode 55.Jump Game
- LeetCode --- 55. Jump Game
- [Leetcode] 55. Jump Game
- [leetcode] 55.Jump Game
- 55. Jump Game
- 55. Jump Game
- [leetcode] 55.Jump Game
- *LeetCode 55. Jump Game
- LeetCode 55. Jump Game
- [leetcode] 55. Jump Game
- 55. Jump Game
- leetcode 55. Jump Game
- 55. Jump Game LeetCode
- 【LeetCode】55. Jump Game
- 55. Jump Game
- BZOJ3203: [SDOI2013]保护出题人
- webStorm基础设置-背景色、字体、大小
- Java初学者记录
- 纯js实现移动端web端轮播图-结合Tween算法自己造轮子
- 安装coreseek
- 55. Jump Game
- 第四章 构建测试体系
- 塔防游戏敌人波数控制
- 构造函数
- Android FileProvider的理解
- Java语法基础练习题
- 词云的配置可能遇到的配置问题。
- Ubuntu14.04下开机进入initramfs导致无法启动
- 代码Overlay机制