当前位置: 首页 > wzjs >正文

建设官方网站首页南京百度seo公司

建设官方网站首页,南京百度seo公司,如何通过国外社交网站做外销,做网站创意跳跃游戏 给你一个非负整数数组 nums ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个下标,如果可以,返回 true ;否则,返回 false 。 思路 这里只…

跳跃游戏

给你一个非负整数数组 nums ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。

判断你是否能够到达最后一个下标,如果可以,返回 true ;否则,返回 false 。

思路

这里只要求判断可达,所以并不需要思考具体的跳动步骤,主要是看覆盖范围

不一定非要明确一次究竟跳几步,每次取最大的跳跃步数,这个就是可以跳跃的覆盖范围。这个范围内,别管是怎么跳的,反正一定可以跳过来。

class Solution {
public:bool canJump(vector<int>& nums) {int cover = 0; // 能到的最远下标if (nums.size() == 1) return true;for (int i = 0; i <= cover; i++) {cover = max(i + nums[i], cover);if (cover >= nums.size() - 1) return true;}return false;}
};

跳跃游戏二则要求输出的是到达 nums[n - 1] 的最小跳跃次数。那么我们就要具体想一下这个跳跃的过程。利用贪心思想,当前可移动距离尽可能多走,如果还没到终点,步数再加一。

这里需要统计两个覆盖范围,当前这一步cur的最大覆盖和下一步next最大覆盖。具体来说就是,cur指的是当前位置覆盖最远距离下标,next指的是在当前位置跳到下一个某个位置后在该位置的最远覆盖下标。

举个例子,有nums = [2,3,1,1,4],初始我们在nums[0] = 2处,此时我们在该位置跳一次最远可以跳到nums[2],next更新为2。初始我们的cur也为0(cur == i),说明我们现在所在的位置是我们在上个位置能跳到的最远的下标,ans++,并更新cur = 2,意思是我们在目前位置i = 0处能跳到的最远下标为i = 2。

当我们枚举i = 1的位置时,我们计算出在i = 1这个地方能跳到的最远下标是4(num[1] + 1),但是我们现在还不在i = 1的位置,所以next = 4且不用更新cur。(也就是说,我们现在还在i = 0,当我们跳到下一个位置i = 1后,我们能最远再跳到下标4;不用更新是因为根据贪心策略我们想尽量跳得更远)。

当我们枚举i = 2的位置,前面操作同理,但是i = 2是我们在当前位置i = 0能跳到的最远位置,所以我们可以跳到该位置,然后更新cur = next。

class Solution {
public:int jump(vector<int>& nums) {if (nums.size() == 1) return 0;int cur = 0; // 当前覆盖最远距离下标int next = 0; // 到达当前位置时的下一个覆盖的最远下标int ans = 0;for (int i = 0; i < nums.size(); i++) {next = max(i + nums[i], next);if (i == cur) {ans++;cur = next;if (next >= nums.size() - 1) break;}}return ans;}
};

http://www.dtcms.com/wzjs/222755.html

相关文章:

  • 网站分享链接怎么做小学生摘抄新闻
  • 做公司网站页面邯郸百度推广公司
  • 营销网站建设设计国内新闻热点事件
  • 今天体育新闻厦门seo关键词优化代运营
  • domain 网站建设重庆seo推广运营
  • 个人网站的开发与设计app推广方案范例
  • dw做网站可以做毕业设计吗网络推广应该怎么做啊
  • 绵阳公司网站建设百度后台登陆入口
  • 汽车网站开发背景武汉seo优化代理
  • 建设网站的公司哪家好今日国际新闻摘抄十条
  • 视频网站建设 可行性报告seo的作用是什么
  • 怎么自己制作网站平台互联网推广是做什么的
  • 武汉做网站哪家好关键词点击工具
  • 桂林北站是哪个区做网站哪家好
  • 做抖音的网站免费b站网站推广
  • 周村有做网站广告的吗惠州seo关键字排名
  • 做外贸网站可以收付款吗菏泽seo
  • 自己做网站申请域名有域名后如何建网站
  • php网站开发工程师招聘要求国外电商平台有哪些
  • 不拦截网站的浏览器怎样在百度上免费建网站
  • wordpress微信支付seo快速排名优化公司
  • 帝国cms做英文网站网站关键词优化费用
  • 山东裕达建设工程咨询有限公司网站营销官网
  • 网站开发培训训搜索百度网页版
  • 提供商城网站建设谷歌浏览器网页版入口
  • 想在淘宝上找网站建设的靠谱吗?营销型网站分为哪几种
  • 运营的工资一般是多少单页面seo搜索引擎优化
  • 专做会议发布的网站杭州网站seo外包
  • 酒店网站模板设计方案网络营销工具体系
  • 西安保洁公司网站建设软文写作营销