# Jump Game LeetCode Solution | Easy Approach Share:

Jump Game | You are given an integer array `nums`. You are initially positioned at the array’s first index, and each element in the array represents your maximum jump length at that position.

Return `true` if you can reach the last index, or `false` otherwise.

Example 1:

```Input: nums = [2,3,1,1,4]
Output: true
Explanation: Jump 1 step from index 0 to 1, then 3 steps to the last index.
```

Example 2:

```Input: nums = [3,2,1,0,4]
Output: false
Explanation: You will always arrive at index 3 no matter what. Its maximum jump length is 0, which makes it impossible to reach the last index.
```

Constraints:

• `1 <= nums.length <= 104`
• `0 <= nums[i] <= 105`

Time: O(n)
Space: O(1)

### C++

`````` class Solution {
public:
bool canJump(vector<int>& nums) {
int i = 0;

for (int reach = 0; i < nums.size() && i <= reach; ++i)
reach = max(reach, i + nums[i]);

return i == nums.size();
}
};
``````

### Java

`````` class Solution {
public boolean canJump(int[] nums) {
int i = 0;

for (int reach = 0; i < nums.length && i <= reach; ++i)
reach = Math.max(reach, i + nums[i]);

return i == nums.length;
}
}
``````

### Python

``````class Solution:
def canJump(self, nums: List[int]) -> bool:
i = 0
reach = 0

while i < len(nums) and i <= reach:
reach = max(reach, i + nums[i])
i += 1

return i == len(nums)

``````

#### Watch Tutorial

Checkout more Solutions here