代码随想录Day27贪心02 下 LeetCodeT45 跳跃游戏II

简介: 代码随想录Day27贪心02 下 LeetCodeT45 跳跃游戏II

LeetCode T45 跳跃游戏II

题目链接:45. 跳跃游戏 II - 力扣(LeetCode)

题目思路:

这题我们仍然使用贪心的思路来解决问题,我们仍然是判断每次能跳的最大步数来达到用最少的步数到达终点,这题我们仍然采用覆盖的思想,我们采用一个cur记录下目前的最大覆盖,采用一个next记录下次跳到哪个位置(在覆盖中更新以得到最大距离),一个result记录步数,只要cur没走到终点后面,我进行更新cur的时候就算走了一步,如果到终点或者超越终点了,就跳出循环,直接返回目前记录的步数即可

题目代码:

class Solution {
    public int jump(int[] nums) {
        int result = 0;
        int next = 0;
        int cur = 0;
        for(int i = 0;i<nums.length;i++)
        {
            next = Math.max(i+nums[i],next);
            if(i == cur)
            {
                if(cur<nums.length-1)
                {
                    result++;
                    cur = next;
                }
                else
                {
                    break;
                }
            }
        }
        return result;
    }
}
相关文章
|
11月前
代码随想录 Day27 贪心02中 LeetCode T55跳跃游戏
代码随想录 Day27 贪心02中 LeetCode T55跳跃游戏
32 0
|
1月前
|
算法
LeetCode第55题跳跃游戏
LeetCode第55题"跳跃游戏"的解题方法,通过记录当前最远可达到的位置并判断每个位置是否可达以及能否到达末尾,有效解决了跳跃至数组末尾的可行性问题。
LeetCode第55题跳跃游戏
|
4月前
|
算法 测试技术 vr&ar
【动态规划】【C++算法】1340. 跳跃游戏 V
【动态规划】【C++算法】1340. 跳跃游戏 V
|
4月前
|
Java 索引
leetcode-45:跳跃游戏 II
leetcode-45:跳跃游戏 II
36 0
|
4月前
|
算法
六六力扣刷题贪心算法之跳跃游戏
六六力扣刷题贪心算法之跳跃游戏
32 0
|
边缘计算 算法 测试技术
LeetCode 周赛 334,在算法的世界里反复横跳
今天是 LeetCode 第 334 场周赛,你参加了吗?这场周赛考察范围比较基础,整体难度比较平均,第一题难度偏高,第四题需要我们在算法里实现 “反复横跳”,非常有意思。
88 1
|
算法
leetcode:45.跳跃游戏 II
给定一个非负整数数组,你最初位于数组的第一个位置。
68 0
|
算法
leetcode:55.跳跃游戏
给定一个非负整数数组,你最初位于数组的第一个位置。
57 0
LeetCode动态规划—跳跃游戏从跳到头到跳最少下跳到头(45、55)
LeetCode动态规划—跳跃游戏从跳到头到跳最少下跳到头(45、55)