lintcode: 跳跃游戏 II

 跳跃游戏 II

给出一个非负整数数组,你最初定位在数组的第一个位置。

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

你的目标是使用最少的跳跃次数到达数组的最后一个位置。

样例

给出数组A = [2,3,1,1,4],最少到达数组最后一个位置的跳跃次数是2(从数组下标0跳一步到数组下标1,然后跳3步到数组的最后一个位置,一共跳跃2次)

解题

Jump1 

终于自己还是没有解决出来

参考链接   理解不透 

public class Solution {/*** @param A: A list of lists of integers* @return: An integer*/public int jump(int[] A) {int target = A.length-1;int cnt = 0;while(target > 0) {for(int i=0; i<target; i++) {if(i+A[i] >= target) {target = i;cnt++;break;}}}return cnt;}}

参考链接2 

这个好理解

public class Solution {/*** @param A: A list of lists of integers* @return: An integer*/public int jump(int[] nums) {int ret = 0;int curMax = 0;int curRch = 0;for(int i = 0; i < nums.length; i ++) // 一个一个的扫描{if(curRch < i)// 跳不到 i位置,选取前面可以跳的最远 位置{ret ++;curRch = curMax;}curMax = Math.max(curMax, nums[i]+i);// 能够跳到最远的 那个位置 }return ret;}}

Python

class Solution:# @param A, a list of integers# @return an integerdef jump(self, A):# write your code hereif A == None or len(A)<= 1:return 1MaxJump = A[0]subJump = A[0]count = 1for i in range(1,len(A)):if subJump <i:count+=1;subJump = MaxJumpMaxJump = max(MaxJump , A[i] + i)return count 

 

转载于:https://www.cnblogs.com/theskulls/p/5292449.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/418788.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

谷粒商城--API三级分类--网关统一配置跨域

什么是跨域&#xff0c;为什么会有跨域问题的出现 一、什么是同源策略&#xff1f; 1、同源策略/SOP&#xff08;Same origin policy&#xff09;是一种约定&#xff0c;由Netscape公司1995年引入浏览器&#xff0c;它是浏览器最核心也最基本的安全功能&#xff0c;如果缺少了…

nodejs-循环

for循环for(var key in object){consol.log(wor : key);}来自为知笔记(Wiz)转载于:https://www.cnblogs.com/weloveshare/p/5297965.html

Spring Boot缓存注解@Cacheable、@CacheEvict、@CachePut使用

https://blog.csdn.net/dreamhai/article/details/80642010

【转】Xcode 7 真机调试详细步骤

原文网址&#xff1a;http://www.jianshu.com/p/fa5f90b61ad6 文&#xff0f;ldjhust&#xff08;简书作者&#xff09;原文链接&#xff1a;http://www.jianshu.com/p/fa5f90b61ad6著作权归作者所有&#xff0c;转载请联系作者获得授权&#xff0c;并标注“简书作者”。转载&a…

踩坑记录--mybatisplus模糊查询中文时 有数据但 like查不到

排查过程&#xff1a; 先去打印台查看SQL语句 接着输入英文可以查到&#xff0c;输入中文查不到 想到可能是编码原因 百度精准搜----发现最终原因&#xff1a; 原因是application.properties中数据库没有配置&characterEncodingutf-8

LeetCode 204. Count Primes

注&#xff1a;质数从2开始&#xff0c;2、3…… 改进过程&#xff1a; 一、常规思路是对小于n的每一个数进行isPrime判断&#xff0c;isPrime(int x)函数中for(int i 2; i < x /2; i)&#xff0c;如果x%i0&#xff0c;return false。 二、将isPrime(int x)中i的范围改为i …

base64的用法

js base64的用法&#xff1a;https://www.jianshu.com/p/14437764eff3 java base64的用法&#xff1a; String nameBase64 escOrgVo.getName();String name "";if (StringUtils.isNotBlank(nameBase64)) {try {name new String(Base64.decode(nameBase64), &quo…

75-商品服务-品牌分类关联与级联更新

1.注意事务的使用&#xff08;这里事务在controller里面加&#xff09; 2.认识到更新某一表中的某个属性的时候要同步更新冗余表里面的相同信息。

SQL SERVER-约束

NOT NULL - 指示某列不能存储 NULL 值。UNIQUE - 保证某列的每行必须有唯一的值。PRIMARY KEY - NOT NULL 和 UNIQUE 的结合。确保某列&#xff08;或两个列多个列的结合&#xff09;有唯一标识&#xff0c;有助于更容易更快速地找到表中的一个特定的记录。FOREIGN KEY - 保证一…

78--规格参数的查询与修改功能

1.枚举类的应用&#xff1a;这样如果在表中修改了&#xff0c;就不用到处去代码中修改了

HTTP POST GET 本质区别详解(转)

一 原理区别 一般在浏览器中输入网址访问资源都是通过GET方式&#xff1b;在FORM提交中&#xff0c;可以通过Method指定提交方式为GET或者POST&#xff0c;默认为GET提交 Http定义了与服务器交互的不同方法&#xff0c;最基本的方法有4种&#xff0c;分别是GET&#xff0c;POST…

java 8 list和数组之间的相互转换

list转数组&#xff1a;https://blog.csdn.net/qq_37653556/article/details/83271784 https://blog.csdn.net/qq_39985330/article/details/95332949

80--查询分组关联属性

1.mybatis-plus for-each标签的使用 2.PostMapping 要用注解 RequestBody 进行封装数据

配置Log4j(很详细)

Log4J的配置文件(Configuration File)就是用来设置记录器的级别、存放器和布局的&#xff0c;它可接keyvalue格式的设置或xml格式的设置信息。通过配置&#xff0c;可以创建出Log4J的运行环境。1. 配置文件Log4J配置文件的基本格式如下&#xff1a; #配置根Loggerlog4j.rootLog…

P91--商品保存debug完成

1.坑&#xff1a;springcloud之Feign超时问题(Read timed out executing POST http://***) 解决方案 首先&#xff0c;我们看下Feign的简介 Feign 是一个声明式的web服务客户端&#xff0c;这便得编写web服务客户端更容易&#xff0c;使用Feign 创建一个接口并对它进行注解&am…