55. Jump Game Leetcode Python

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.

This is a greedy problem, in each step we need to check fastest reach step. If there is any step cannot help we step further that means we cannot reach the end.

code is as follow:

<pre name="code" class="python">class Solution:
    # @param A, a list of integers
    # @return a boolean
    def canJump(self, A):
        index=0
        reach=0
        if len(A)<=1:
            return True
        while index<len(A):
            if reach<index:
                return False
            reach=max(reach,A[index]+index)
            index+=1
        return True
       


 
 

你可能感兴趣的:(LeetCode,array,python,greedy)