C语言 | Leetcode C语言题解之第55题跳跃游戏

题目:

题解:

cpp 复制代码
#define max(a, b) (((a) > (b)) ? (a) : (b))

bool canJump(int* nums, int numsSize){
    int cover = 0;

    int i;
    // 只可能获取cover范围中的步数,所以i<=cover
    for(i = 0; i <= cover; ++i) {
        // 更新cover为从i出发能到达的最大值/cover的值中较大值
        cover = max(i + nums[i], cover);

        // 若更新后cover可以到达最后的元素,返回true
        if(cover >= numsSize - 1)
            return true;
    }

    return false;
}
相关推荐
无限进步_37 分钟前
C++ 多态机制完全解析:从虚函数重写到动态绑定原理
java·c语言·jvm·数据结构·c++·windows·后端
爱编码的小八嘎3 小时前
C语言完美演绎9-13
c语言
爱编码的小八嘎3 小时前
C语言完美演绎9-19
c语言
shada3 小时前
mini-dog-c编译器开发 - 04 递归下降解析器
c语言·编译器
无限进步_3 小时前
二叉搜索树完全解析:从概念到实现与应用场景
c语言·开发语言·数据结构·c++·算法·github·visual studio
顾鉴行思5 小时前
10 字符串常量到底存在哪里?
c语言·汇编·经验分享
Aurorar0rua6 小时前
CS50 x 2024 Notes C - 09
c语言·开发语言·学习方法
承渊政道6 小时前
【动态规划算法】(完全背包问题从状态定义到空间优化)
数据结构·c++·学习·算法·leetcode·动态规划·哈希算法
超级大福宝6 小时前
【力扣48. 旋转图像】超好记忆版 + 口诀
c++·算法·leetcode
相醉为友7 小时前
040 Linux/裸机/RTOS 项目开发的跨平台兼容性——C语言静态接口抽象底层原理分析
linux·c语言·mcu