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

Java面试经典 150 题.P55. 跳跃游戏(009)

本题来自:力扣-面试经典 150 题

面试经典 150 题 - 学习计划 - 力扣(LeetCode)全球极客挚爱的技术成长平台icon-default.png?t=O83Ahttps://leetcode.cn/studyplan/top-interview-150/

题解:

class Solution {public boolean canJump(int[] nums) {int len = nums.length;int i = len - 2;int tar = len - 1;for(;i >= 0;i--){if(nums[i] + i >= tar)tar = i;}if(tar == 0)return true;return false;}
}

思路如下:

使用逆向思维+贪心算法,虽然题上没有说只能向右跳,但是思考一下向左跳是没有意义的,因为

题目只要求我们求出是否可以到达,回跳只会增加到达的可能路径,并不会把到不了变成能到

其次,数组的最后一位是没有意义的,因为他是终点

分析完成,现在需要做的就是判断如何到达,如果从起点开始的话,要考虑的太多了,因为我们不知道要跳几步,但是如果从终点反向推到,就可以只是用最大跳跃距离,也就能使用贪心算法

http://www.lryc.cn/news/473497.html

相关文章:

  • 登录的时候密码使用crypto-js加密解密
  • LLM大模型部署实战指南:部署简化流程
  • 24年10月Google Play政策更新通知
  • 玄机-应急响应- Linux入侵排查
  • 数据驱动业务中的BDS对账班牛返款表集成方案
  • 【Kubernetes实战】三、资源组件Namespace、Pod、Label、Deployment、Service概述。
  • 去中心化的模型训练
  • Arthas调试线上代码技巧
  • QT访问数据库:应用提示Driver not loaded
  • 支持ANC的头戴式蓝牙耳机,更有小金标认证,QCY H3 Pro体验
  • net framework 3.5组件更新失败错误代码0x80072f8f怎样解决
  • C语言初阶:十一.代码调试技巧
  • Jenkins Pipeline 部署总结
  • HTTP的初步了解
  • SM单元 硬件
  • 如何从CSV、JSON等格式创建DataFrame
  • Java避坑案例 - 线程池错误的混用引发的性能故障分析
  • 七种方法助你找到实用且免费的API服务
  • leetcode-74-搜索二维矩阵
  • 122.WEB渗透测试-信息收集-ARL(13)
  • 动态规划 —— 路径问题-下降路径最小和
  • 【Linux网络】TCP_Socket
  • NVR批量管理软件/平台EasyNVR多个NVR同时管理支持视频投放在电视墙上
  • Springboot集成阿里云通义千问(灵积模型)
  • 微信公众号(或微信浏览器)获取openId(网页授权)
  • C++算法第五天
  • 牛客网剑指Offer-树篇-JZ26 树的子结构
  • FFmpeg 4.3 音视频-多路H265监控录放C++开发六,使用SDLVSQT显示yuv文件
  • Spring 设计模式之适配器模式
  • 多传感器数字化分析系统