You are given an integer array nums. You start at index 0, and each element represents your maximum jump length from that position. Return true if you can reach the last index, or false otherwise.
nums = [2,3,1,1,4]truenums = [3,2,1,0,4]falsemaxReach = 0 (furthest index reachable so far)i > maxReach: index unreachable → return falsemaxReach = max(maxReach, i + nums[i])trueWe never need to track exact jump paths. All we care about is the farthest index reachable from any position visited so far. If index i is within that range, we can reach it — and from it, potentially push the frontier further. The moment i exceeds our frontier, no combination of earlier jumps can save us.