leetcode做题记录0055
发布日期:2021-05-07 13:48:24 浏览次数:19 分类:精选文章

本文共 605 字,大约阅读时间需要 2 分钟。

leetcode 0055

说明

只是为了记录一下,不求多快,也不深究。

会简要描述思路,代码中不写注释。

如碰到不会做的用了别人代码会在博客中标出。

题目描述

在这里插入图片描述

思路

用贪心做,在当前可达区域内遍历,计算得出可最远达到距离,遍历完成后更新可达区域。

若最远距离仍在可达区域内,则说明不能达到终点;若最远距离大于等于终点,则说明可达到终点。

class Solution {       public boolean canJump(int[] nums) {   		int start = 0;		int end = 0;		int largestIdx = 0;		while (end < nums.length - 1) {   			for (int i = start; i <= end; i++) {   				if (nums[i] + i > largestIdx) {   					largestIdx = nums[i] + i;				}			}			if (largestIdx <= end) {   				return false;			}			if (largestIdx >= nums.length - 1) {   				return true;			}			start += 1;			end = largestIdx;		}		return true;	}}
上一篇:leetcode做题记录0056
下一篇:leetcode做题记录0054

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2025年04月07日 13时16分03秒