Greedy
Local Choice Visualizer
Watch greedy strategies sort, scan, select, merge, and reset state while each step updates the current result and complexity.
O(n) time / O(1) space
result: farthest 0selected: 0
idx 0default
2
reach 2
idx 1default
3
reach 4
idx 2default
1
reach 3
idx 3default
1
reach 4
idx 4default
4
reach 8
Result
farthest 0
Time
O(n)
Space
O(1)
Step Note
Track the farthest reachable index.
function canJump(values: number[]) {
let farthest = 0
for (let index = 0; index < values.length; index++) {
if (index > farthest) return false
farthest = Math.max(farthest, index + values[index])
if (farthest >= values.length - 1) return true
}
return true
}