55. 跳跃游戏
题目:
给定一个非负整数数组,你最初位于数组的第一个位置。

数组中的每个元素代表你在该位置可以跳跃的最大长度。

判断你是否能够到达最后一个位置。

示例 1:输入: [2,3,1,1,4]
输出: true
解释: 我们可以先跳 1 步,从位置 0 到达 位置 1, 然后再从位置 1 跳 3 步到达最后一个位置。
示例 2:输入: [3,2,1,0,4]
输出: false
解释: 无论怎样,你总会到达索引为 3 的位置。但该位置的最大跳跃长度是 0 , 所以你永远不可能到达最后一个位置。

解题思路:

  1. 贪心算法,如果我跳的这一步能走得更远,那么我就走这一步 。
  2. 那么怎么才能知道哪一步走得更远呢?我们直接用一个新的数组来记录每一个位置下一次能够跳的最远的位置的下标。即=i+nums[i]
  3. 那么只要遍历新的数组,如果能够跳的最远的位置比此时此刻的下标大就行了,如果小,就直接退出。
  4. 最好判断跳的位置

代码:

class Solution {public:bool canJump(vector<int>& nums) {vector<int> index;for(int i=0;i<nums.size();i++){index.push_back(i+nums[i]);}int jump=0;int max=index[0];while(jump<index.size()&&jump<=max){if(max<index[jump]){max=index[jump];}jump++;}if(jump==index.size()) return true;return  false;}
};

需要注意的地方:
1.jump<index.size()&&jump<=max

LeetCode 55. 跳跃游戏 中等难度相关推荐

  1. LeetCode—55.跳跃游戏(Jump Game)——分析及代码(C++)

    LeetCode-55.跳跃游戏[Jump Game]--分析及代码[C++] 一.题目 二.分析及代码 1. 贪心 (1)思路 (2)代码(简洁) (3)代码(高效) (4)结果 三.其他 一.题目 ...

  2. LeetCode 55. 跳跃游戏(贪心)

    1. 题目 给定一个非负整数数组,你最初位于数组的第一个位置. 数组中的每个元素代表你在该位置可以跳跃的最大长度. 判断你是否能够到达最后一个位置. 示例 1:输入: [2,3,1,1,4] 输出: ...

  3. Java实现 LeetCode 55 跳跃游戏

    55. 跳跃游戏 给定一个非负整数数组,你最初位于数组的第一个位置. 数组中的每个元素代表你在该位置可以跳跃的最大长度. 判断你是否能够到达最后一个位置. 示例 1: 输入: [2,3,1,1,4] ...

  4. LeetCode 55. 跳跃游戏

    ​​​​​​55. 跳跃游戏 题目描述: 给定一个非负整数数组 nums ,你最初位于数组的 第一个下标 . 数组中的每个元素代表你在该位置可以跳跃的最大长度. 判断你是否能够到达最后一个下标. 代码 ...

  5. LeetCode 55跳跃游戏56合并区间57插入区间

    原创公众号:bigsai 希望和优秀的你做朋友,感觉不错还请一键三连. 回复进群即可加入和200+人一起打卡.上周打卡: LeetCode 47全排列Ⅱ&48旋转图像 LeetCode 49字 ...

  6. 贪心法——LeetCode 55 跳跃游戏

    跳跃游戏 题目: 给定一个非负整数数组,你最初位于数组的第一个位置. 数组中的每个元素代表你在该位置可以跳跃的最大长度. 判断你是否能够到达最后一个位置. 示例 1: 输入: [2,3,1,1,4] ...

  7. leetcode - 55. 跳跃游戏

    给定一个非负整数数组,你最初位于数组的第一个位置. 数组中的每个元素代表你在该位置可以跳跃的最大长度. 判断你是否能够到达最后一个位置. 示例 1: 输入: [2,3,1,1,4] 输出: true ...

  8. Leetcode 55.跳跃游戏 (每日一题 20210706)

    给定一个非负整数数组 nums ,你最初位于数组的 第一个下标 .数组中的每个元素代表你在该位置可以跳跃的最大长度.判断你是否能够到达最后一个下标.示例 1:输入:nums = [2,3,1,1,4] ...

  9. leetcode 55. 跳跃游戏 思考分析

    题目 给定一个非负整数数组,你最初位于数组的第一个位置. 数组中的每个元素代表你在该位置可以跳跃的最大长度. 判断你是否能够到达最后一个位置. 示例1: 输入: [2,3,1,1,4] 输出: tru ...

最新文章

  1. java.util.Properties类,保存时保留注释及格式不变
  2. 使用 GMap.NET 实现添加标注、移动标注功能。(WPF版)
  3. 共创Linux防火墙,Linux防火墙iptables简明教程
  4. 条款25 :尽可能延后变量定义式的出现时间
  5. java的list和数组谁高效_java 中ArrayList与LinkedList性能比较
  6. (转)问题: Oracle Database 10g 未在当前操作系统中经过认证
  7. 利用access创建数据字典_VBA数组与字典解决方案54讲:利用字典和数组提取数据并按行回填...
  8. php文字音频插件下载安装,Goodhertz音频插件下载
  9. Jlinko ob驱动
  10. JSX、JSX的介绍、JSX特点、JSX的语法、XML基本语法
  11. 伦斯勒理工学院计算机科学专业强吗,2020年伦斯勒理工学院排名TFE Times美国最佳计算机科学硕士专业排名第59...
  12. SQL(oracle)常用命令
  13. java中的12的意思_在外壳中,“ 2&1”是什么意思?
  14. Win11电脑外接显卡后蓝屏?Win11显卡坞一打开就蓝屏的解决方法
  15. 使用go实现Aes加解密
  16. Win10为什么电脑在有密码的情况下,睡眠后不用输密码打开?
  17. c语言中printf的转义字符,C语言Printf格式
  18. java option请求_Spring boot处理OPTIONS请求
  19. VirtualBox 开源桌面虚拟化软件
  20. appium+mitmdump+夜神模拟器抓取抖音app

热门文章

  1. CodeForces - 707C
  2. Java之Object类与instanceof关键字
  3. BYS推荐MS前端PhoneCall面试问题整理-1
  4. 【转载】C++创建对象的两种方法
  5. WEB安全:XSS漏洞与SQL注入漏洞介绍及解决方案
  6. 使用 Jest 和 Enzyme 测试 React 组件
  7. Cesium入门11 - Interactivity - 交互性
  8. AIX存储管理(二)物理卷管理
  9. org/springframework/core/MethodClassKey
  10. JavaScript模块化开发整理