1. 思路 其实我们只需要遍历数组,更新一个最大能跳的距离,如果当前遍历的点超过了最大能跳的距离,说明当前点不可到达,那么最后一个位置同样不能到达。 2. 代码 class Solution { public: bool canJump(vector<int>& nums) { int maxLength = 0, n = nums.size(); for(int i = 0; i <= maxLength && i < n; ++i) { maxLength = max(maxLength, nums[i] + i); } return maxLength >= n - 1; } };