https://leetcode-cn.com/problems/jump-game/
# -*- coding:utf-8 -*- class Solution(object): def canJump(self, nums): """ :type nums: List[int] :rtype: bool """ start = 0 end = 0 n = len(nums) while start <= end and end < len(nums) - 1: end = max(end, nums[start] + start) start += 1 return end >= n - 1 if __name__ == '__main__': nums = [3, 2, 1, 0, 4] print(Solution().canJump(nums))
思路:标记一个最远跳跃距离,依次判断当前位置加上当前位置最远跳跃距离有没有超过最远距离,在遍历完所有点之后判断最远距离大不大于数组长度
0 条评论