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;
}
相关推荐
Nil2088 小时前
leetcode 118杨辉三角
算法·leetcode·职场和发展
All for pursuit.10 小时前
【设计-1】208.实现Trie (前缀树)
数据结构·c++·算法·leetcode
Escalating_xu11 小时前
【C 语言】深入理解指针(5):sizeof、strlen、数组名语义与指针笔试题全解析
java·c语言·开发语言
Code_Solitude12 小时前
c语言:递归
java·c语言·算法
万年咸鱼12 小时前
解决C语言的内存释放机制
java·c语言·python
老王爱玩车13 小时前
自定义类型:结构体
c语言·开发语言·学习
CoderYanger14 小时前
A.每日一题:1614. 括号的最大嵌套深度
java·程序人生·算法·leetcode·面试·学习方法
Logic10115 小时前
C语言/数据结构字符串题解:最短循环节——找出能重复构成原串的最短基础子串
c语言·数据结构·字符串·枚举·时间复杂度·算法题·kmp优化
我就是不信15 小时前
CuTest:轻量级 C 语言单元测试框架实战指南
c语言·单元测试·log4j
Xin77015 小时前
LeetCode 230. 二叉搜索树中第 K 小的元素(迭代中序遍历 + 栈)
leetcode