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

专注网站建设公司/seo收索引擎优化

专注网站建设公司,seo收索引擎优化,福建省建设人才与科技发展中心网站,冲压加工瑞安有做网站吗06贪心:跳跃游戏 55. 跳跃游戏 刚看到本题一开始可能想:当前位置元素如果是 3,我究竟是跳一步呢,还是两步呢,还是三步呢,究竟跳几步才是最优呢? 其实跳几步无所谓,关键在于可跳的…

06贪心:跳跃游戏

55. 跳跃游戏

刚看到本题一开始可能想:当前位置元素如果是 3,我究竟是跳一步呢,还是两步呢,还是三步呢,究竟跳几步才是最优呢?

其实跳几步无所谓,关键在于可跳的覆盖范围!

不一定非要明确一次究竟跳几步,每次取最大的跳跃步数,这个就是可以跳跃的覆盖范围。

这个范围内,别管是怎么跳的,反正一定可以跳过来。

那么这个问题就转化为跳跃覆盖范围究竟可不可以覆盖到终点!

每次移动取最大跳跃步数(得到最大的覆盖范围),每移动一个单位,就更新最大覆盖范围。

贪心算法局部最优解:每次取最大跳跃步数(取最大覆盖范围),整体最优解:最后得到整体最大覆盖范围,看是否能到终点

局部最优推出全局最优,找不出反例,试试贪心!

i 每次移动只能在 cover 的范围内移动,每移动一个元素,cover 得到该元素数值(新的覆盖范围)的补充,让 i 继续移动下去。

而 cover 每次只取 max(该元素数值补充后的范围, cover 本身范围)。

如果 cover 大于等于了终点下标,直接 return true 就可以了。

class Solution {public boolean canJump(int[] nums) {int cover = 0;//只关注能跳跃的最大范围,如果最大范围能包含到结尾,就可以跳到for(int i = 0; i <= cover; i++) {//用<=,因为我能跳到最大的范围cover = Math.max(cover, i + nums[i]);if(cover >= nums.length - 1) return true;}return false;}
}

总结

这道题目关键点在于:不用拘泥于每次究竟跳几步,而是看覆盖范围,覆盖范围内一定是可以跳过来的,不用管是怎么跳的。

可以看出思路想出来了,代码还是非常简单的。

感觉,贪心系列题目和题目之间貌似没有什么联系?

是真的就是没什么联系,因为贪心无套路!没有个整体的贪心框架解决一系列问题,只能是接触各种类型的题目锻炼自己的贪心思维!

http://www.jmfq.cn/news/5333725.html

相关文章:

  • 技术支持 网站建设/公司网页网站建设
  • 网站建设协议/成都网站建设技术外包
  • 网站建设到本地/seo网站分析
  • 图书馆网站建设与评价研究/百度新闻官网
  • 龙岗附近公司做网站建设多少钱/google浏览器官方下载
  • 涿州做网站建设/北京网络营销公司排名
  • 中国和城乡建设部网站首页/广州网站建设方案优化
  • 吴桥县网站建设公司/在线代理浏览网页
  • 厦门市建设局网站住房保障专栏/活动策划
  • 网站建设模/自媒体135网站
  • 浙江省工程建设质量管理协会 网站/百度提问在线回答问题
  • 新葡京网址网站建设/西安全网优化
  • 保山网站建设服务/在线发外链工具
  • 网站建设论坛社区/企业营销策划实训报告
  • 关于网站平台建设调研的函/网站优化排名软件网
  • 高校机关党委网站建设/外贸企业网站设计公司
  • 建设网站导航/免费推广的网站平台
  • 中职网站建设与维护考试题/google 推广优化
  • 邯郸住房及城乡建设部网站/百度seo优化招聘
  • 哈尔滨道里建设局网站/长沙百度seo代理
  • 信息公开暨网站建设管理办法/seo标题优化导师咨询
  • 盘州市网站建设/做网站的软件叫什么
  • 网页设计与网站建设试题/今日热点新闻排行榜
  • 招聘去建设赌博类网站/企业网络规划与设计
  • 内部网站建设依据文件/百度搜索引擎优化方案
  • 北京天仪建设工程质量检测所网站6/网络营销薪酬公司
  • 遵义建设厅官方网站/网站关键词排名优化价格
  • 重庆微网站建设哪家好/百度seo关键词排名
  • 石家庄手机网站建设/东莞网站建设公司
  • 国外开源网站建设软件/快速优化工具