Jump Game II | Java最短代码实现
2016-03-14 23:19
671 查看
原题链接:45. Jump Game II
【思路】
是 Jump Game 的拓展,在理解了前者基础上,本题要计算最少步数,那么新增一个变量,preMax记录前一次最大index值,当i小于preMax时,minStep加一步:
【思路】
是 Jump Game 的拓展,在理解了前者基础上,本题要计算最少步数,那么新增一个变量,preMax记录前一次最大index值,当i小于preMax时,minStep加一步:
public int jump(int[] nums) { int maxIndex = nums[0]; int preMax = maxIndex; int minStep = 1; for (int i = 1; i <= maxIndex && maxIndex < nums.length - 1; i++) { if (preMax < i) { minStep++; preMax = maxIndex; } maxIndex = Math.max(maxIndex, nums[i] + i); } if (preMax < nums.length - 1) minStep++; //请读者尝试将这句话注掉,会有什么错误 return nums.length == 1 ? 0 : minStep; }欢迎优化!
相关文章推荐
- Java Socket编程
- JAVA类加载机制
- JavaWeb
- android studio 快捷键更改为和eclipse一样
- 网店系统javashop发布其开源框架,遵循GPL协议
- Spring中Resource实现类
- 5个强大的Java分布式缓存框架推荐
- Java线程并发控制基础知识
- Java基础06方法
- HBase报错解决【Caused by java.net.URISyntaxException Relative path in absolute URI rsrchbase-common-1.0.0
- 开发Java Web企业级项目吐槽
- 迟到的总结(三)--springmvc的系统学习之数据的处理,乱码及restful
- java 五大创建型模式
- Java开发中的23种设计模式详解
- java 结构型模式
- JAVA BIO NIO AIO 意思和区别
- springmvc+spring+mybatis+maven+mysql项目(一)
- Java多线程回顾2:线程的生命周期
- 自然语言处理工具包MALLET教程-中文版安装使用指南
- Java 内存模型及GC原理