leetcode做题笔记45

给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums0

每个元素 numsi 表示从索引 i 向前跳转的最大长度。换句话说,如果你在 numsi 处,你可以跳转到任意 numsi + j 处:

0 <= j <= numsi

i + j < n

返回到达 numsn - 1 的最小跳跃次数。生成的测试用例可以到达 numsn - 1

思路一:贪心算法

cpp 复制代码
int jump(int* nums, int numsSize){
    int flag = numsSize -1;
    int res = 0;
    while(flag!=0)
    {
        for(int i  = 0;i<numsSize;i++)
        {
            if(nums[i]+i>=flag)
            {
                flag =i;
                res++;
                break;
            }
        }


    }

    return res;
}

分析:

本题要求最小跳跃次数,可从后向前考虑,即求到达最后一个的最前一个的元素,求此元素的方法则是从前向后遍历,若numsi+i>=flag则flag=i,再进行循环。

总结:

本题使用贪心算法,即考虑如何最快到达最后一个,便可求出最小跳跃次数

相关推荐
luj_17682 分钟前
一线一区一变破解人盯人防守密码
开发语言·网络·c++·经验分享·算法
Wang's Blog25 分钟前
Java框架快速入门: Spring Security+OAuth2之字段验证与自定义验证注解实战
java·算法·spring
带多刺的玫瑰31 分钟前
Leecode#29刷题之两数相除
java·python·算法
smj2302_7968265232 分钟前
解决leetcode第4017题数组中的峰值II
python·算法·leetcode
午彦琳36 分钟前
2026.9.9
数据结构·算法·leetcode
luj_176839 分钟前
中锋卡位与开放线博弈
c语言·开发语言·网络·经验分享·算法
祁白_40 分钟前
防御引擎绕过方法
笔记·web安全·php·防御引擎
洋不写bug1 小时前
二叉树(四)经典算法题目解析,公共祖先,二叉树构造,非递归遍历
数据库·算法·二叉树·二叉树构造·公共祖先
志尊宝1 小时前
Vue3 零基础每日笔记(009):watch 侦听器——数据一变就“做事“
vue.js·笔记·缓存
hansang_IR1 小时前
【题解】P4454 [CQOI2018] 破解D-H协议
c++·算法·密码学·数论