博客
关于我
动态规划19 跳跃游戏 II
阅读量:491 次
发布时间:2019-03-07

本文共 764 字,大约阅读时间需要 2 分钟。

45. 跳跃游戏 II给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。你的目标是使用最少的跳跃次数到达数组的最后一个位置。假设你总是可以到达数组的最后一个位置。示例 1:输入: [2,3,1,1,4]输出: 2解释: 跳到最后一个位置的最小跳跃数是 2。     从下标为 0 跳到下标为 1 的位置,跳 1 步,然后跳 3 步到达数组的最后一个位置。示例 2:输入: [2,3,0,1,4]输出: 2提示:1 <= nums.length <= 10000 <= nums[i] <= 10
思路:	动态规划 从尾部向首部遍历 并且求出最小值
class Solution {       //[2,3,1,1,4]    public int jump(int[] nums) {           if(nums.length==1) return 0;        int[] dp=new int[nums.length];        for(int i=0;i
=0;i--){ int step=nums[i]; if((i+step)>=nums.length-1) dp[i]=1; else{ while(step!=0){ dp[i]=Math.min(dp[i],dp[i+step]+1); step--; } } } return dp[0]; }}

转载地址:http://uwzcz.baihongyu.com/

你可能感兴趣的文章
mysql server has gone away
查看>>
mysql slave 停了_slave 停止。求解决方法
查看>>
MySQL SQL 优化指南:主键、ORDER BY、GROUP BY 和 UPDATE 优化详解
查看>>
MYSQL sql语句针对数据记录时间范围查询的效率对比
查看>>
mysql sum 没返回,如果没有找到任何值,我如何在MySQL中获得SUM函数以返回'0'?
查看>>
mysql Timestamp时间隔了8小时
查看>>
Mysql tinyint(1)与tinyint(4)的区别
查看>>
mysql union orderby 无效
查看>>
mysql v$session_Oracle 进程查看v$session
查看>>
mysql where中如何判断不为空
查看>>
MySQL Workbench 使用手册:从入门到精通
查看>>
mysql workbench6.3.5_MySQL Workbench
查看>>
MySQL Workbench安装教程以及菜单汉化
查看>>
MySQL Xtrabackup 安装、备份、恢复
查看>>
mysql [Err] 1436 - Thread stack overrun: 129464 bytes used of a 286720 byte stack, and 160000 bytes
查看>>
MySQL _ MySQL常用操作
查看>>
MySQL – 导出数据成csv
查看>>
MySQL —— 在CentOS9下安装MySQL
查看>>
MySQL —— 视图
查看>>
mysql 不区分大小写
查看>>