力扣hot100 跳跃游戏 II 贪心 思维

Problem: 45. 跳跃游戏 II
在这里插入图片描述

思路

👨‍🏫 参考

  • 每次在上次能跳到的范围(end)内选择一个能跳的最远的位置(也就是能跳到max_far位置的点)作为下次的起跳点 !

在这里插入图片描述

在这里插入图片描述

Code

⏰ 时间复杂度: O ( n ) O(n) O(n)
🌎 空间复杂度: O ( 1 ) O(1) O(1)

class Solution {
	public int jump(int[] nums)
	{
		int steps = 0;
		int n = nums.length;
		int end = 0; // 上次跳跃可达范围右边界(下次的最右起跳点)
		int maxPos = 0;// 目前能跳到的最远位置
		for (int i = 0; i < n - 1; i++)
		{
			maxPos = Math.max(maxPos, nums[i] + i);// 这里贪的是 (nums[i]+i)
//			   到达上次跳跃能到达的右边界了
			if (i == end)
			{
				end = maxPos; // 目前能跳到的最远位置变成了下次起跳位置的有边界
				steps++;// 进入下一次跳跃
			}
		}
		return steps;
	}
}

相关推荐

  1. 贪心题解 跳跃游戏

    2024-02-01 14:04:03       37 阅读
  2. 45. 跳跃游戏 II

    2024-02-01 14:04:03       34 阅读
  3. :45. 跳跃游戏 II

    2024-02-01 14:04:03       28 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-01 14:04:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-01 14:04:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-01 14:04:03       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-01 14:04:03       20 阅读

热门阅读

  1. 【Midjourney】新手指南:参数设置

    2024-02-01 14:04:03       29 阅读
  2. 【数据结构】单调队列

    2024-02-01 14:04:03       37 阅读
  3. C语言结构体

    2024-02-01 14:04:03       34 阅读
  4. 图论——最短路径

    2024-02-01 14:04:03       24 阅读
  5. JUnit

    JUnit

    2024-02-01 14:04:03      32 阅读
  6. vue登陆修改密码等加密(禁止明文传输)

    2024-02-01 14:04:03       28 阅读
  7. Python 将文本转换成语音播放 pyttsx3

    2024-02-01 14:04:03       25 阅读
  8. 【GPU驱动开发】- GPU架构流程

    2024-02-01 14:04:03       25 阅读
  9. go语言-字符串处理常用函数

    2024-02-01 14:04:03       26 阅读
  10. P3654 First Step (ファーストステップ)题解

    2024-02-01 14:04:03       34 阅读
  11. 你保存alzet渗透泵中文说明书了吗?

    2024-02-01 14:04:03       31 阅读
  12. 关于js的动画效果

    2024-02-01 14:04:03       27 阅读
  13. C语言函数指针与回调函数

    2024-02-01 14:04:03       22 阅读