zoukankan      html  css  js  c++  java
  • Leetcode-Jump Game

    Given an array of non-negative integers, you are initially positioned at the first index of the array.

    Each element in the array represents your maximum jump length at that position.

    Determine if you are able to reach the last index.

    For example:
    A = [2,3,1,1,4], return true.

    A = [3,2,1,0,4], return false.

    Have you met this question in a real interview?
     
    Analysis:
    We record the max reachable length and update it at each A[i].
    1. If maxReach<i, then cannot reach i return false;
    2. If maxReach<i+A[i], then we update the maxReach to i+A[i].
    3. Once maxReach>=A.length-1, we can reach the end, return true.
     
    Solution:
     1 public class Solution {
     2     public boolean canJump(int[] A) {
     3         if (A.length==0 || A.length==1) return true;
     4         int len = A.length;
     5 
     6         int maxReach = A[0];
     7         for (int i=1;i<len;i++)
     8             if (maxReach<i)
     9                 return false;
    10             else {
    11                 if (maxReach<i+A[i]) maxReach = i+A[i];
    12                 if (maxReach>=len-1) return true;
    13             }
    14        
    15         return false;       
    16     }
    17 }
  • 相关阅读:
    antd Icon
    antd button
    tree 向上查找(更新删除后页面的数据)
    tree 向下查找 (删除整条tree)
    tree结构统一修改属性名(递归)
    json转换为tree对象(递归)
    python测试题
    c函数练习
    飞机一只
    python1119作业1
  • 原文地址:https://www.cnblogs.com/lishiblog/p/4102809.html
Copyright © 2011-2022 走看看