55. Jump Game
来源:互联网 发布:部落冲突蓝胖子数据 编辑:程序博客网 时间:2024/06/05 05:48
题目:
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
.
题意:
给定一个数组,数组每个元素值代表从该点最大可走的步数(也可以走小于等于该步数),判断最后能不能走到数组的最后。
思路:DP法,动态规划法。
思路一:
维持一个全局最大可达距离,将每个元素的最大可达距离与全局最大可达距离相比,如果大于全局最大,则更新全局最大,否则维持原全局最大可达。
代码:
class Solution {public: bool canJump(vector<int>& nums) { int n = nums.size(); int i = 0; for (int reach = 0; i < n && i <= reach; ++i) reach = max(i + nums[i], reach); return i == n; }};思路二:
从第一个元素开始,往后面循环一次max-1,之后将max-1与元素值nums[i]进行比较,取最大值。
代码:
class Solution {public: bool canJump(vector<int>& nums) { int n = nums.size(); if(n==0){ return true; } int maxreach = nums[0]; for(int i=1; i<n; i++){ if(maxreach<=0){ return false; } maxreach = max(maxreach-1, nums[i]); } return true; }};
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
- ecshop二次开发--热词搜索且显示
- Android 网易云课堂第一周笔记16/5/10
- OC中从字符串中提取日期组件(年,月,日,时,分,秒)
- Python urlib vs urlib2
- Android Studio 配置ADV发生异常“VT -x is desabled in BIOS”
- 55. Jump Game
- hive--桶
- Entity Framework Extended Library (EF扩展类库,支持批量更新、删除、合并多个查询等)
- 各种数据库分页查询sql语句大全
- C和C++函数时的JNI使用区别
- Android ScrollView如何设置maxHeight
- ASP.NET AJAX入门系列(5):使用UpdatePanel控件(二)
- Android为什么要设计出Bundle而不是直接使用HashMap来进行数据传递?
- Unity Shader学习1——简述