题解 | #跳跃游戏(一)# [P0]

跳跃游戏(一)

http://www.nowcoder.com/practice/23407eccb76447038d7c0f568370c1bd

假DP 从前往后遍历每一个点,更新目前能跳到的最远的点

import java.util.*;

public class Solution {
    public boolean canJump (int[] nums) {
      int reach = 0; // 目前最远能跳到的点
      for (int i = 0; i < nums.length; i++) {
        // 之前的点都跳不到当前的点,所以失败
        if (reach < i) return false;
        // 已经能跳到最后一个点了,直接返回
        if (reach >= nums.length-1) return true;
        // 如果通过当前的点能够到更远的点,更新reach
        reach = Math.max(reach, i + nums[i]);
      }
      
      return true;
    }
}
DP是真的烦 文章被收录于专栏

只是为了把DP的题集中一下方便自己复习

全部评论

相关推荐

勤奋努力的椰子这就开摆:美团骑手在美团工作没毛病
投递美团等公司10个岗位
点赞 评论 收藏
分享
评论
5
收藏
分享
牛客网
牛客企业服务