Class Solution
Medium
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 <= 1040 <= nums[i] <= 105
To solve the “Jump Game” problem in Java with the Solution class, follow these steps:
- Define a method 
canJumpin theSolutionclass that takes an integer arraynumsas input and returns a boolean indicating whether it’s possible to reach the last index. - Initialize a variable 
maxReachto keep track of the maximum index that can be reached. - Iterate through the array 
numsfrom index0tonums.length - 1:- Check if the current index 
iis greater thanmaxReach. If it is, returnfalseas it’s not possible to reach the last index. - Update 
maxReachas the maximum ofmaxReachandi + nums[i], which represents the furthest index that can be reached from the current position. 
 - Check if the current index 
 - After iterating through all elements in 
nums, returntrueas it’s possible to reach the last index. 
Here’s the implementation of the canJump method in Java:
class Solution {
    public boolean canJump(int[] nums) {
        if (nums == null || nums.length == 0) {
            return false;
        }
        int maxReach = 0;
        for (int i = 0; i < nums.length; i++) {
            if (i > maxReach) {
                return false;
            }
            maxReach = Math.max(maxReach, i + nums[i]);
            if (maxReach >= nums.length - 1) {
                return true;
            }
        }
        return false;
    }
}
This implementation efficiently determines whether it’s possible to reach the last index in the given array nums using a greedy approach, with a time complexity of O(n).
- 
Constructor Summary
Constructors - 
Method Summary
 
- 
Constructor Details
- 
Solution
public Solution() 
 - 
 - 
Method Details
- 
canJump
public boolean canJump(int[] nums)  
 -