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

头条网站怎么做网站排名优化制作

头条网站怎么做,网站排名优化制作,中国纪检监察报电子版下载,做系统哪个网站上的好环形数组是否存在循环 存在一个不含 0 的 环形 数组 nums ,每个 nums[i] 都表示位于下标 i 的角色应该向前或向后移动的下标个数: 如果 nums[i] 是正数,向前(下标递增方向)移动 |nums[i]| 步 如果 nums[i] 是负数&…
  1. 环形数组是否存在循环
    存在一个不含 0 的 环形 数组 nums ,每个 nums[i] 都表示位于下标 i 的角色应该向前或向后移动的下标个数:

如果 nums[i] 是正数,向前(下标递增方向)移动 |nums[i]| 步
如果 nums[i] 是负数,向后(下标递减方向)移动 |nums[i]| 步
因为数组是 环形 的,所以可以假设从最后一个元素向前移动一步会到达第一个元素,而第一个元素向后移动一步会到达最后一个元素。

数组中的 循环 由长度为 k 的下标序列 seq 标识:

遵循上述移动规则将导致一组重复下标序列 seq[0] -> seq[1] -> … -> seq[k - 1] -> seq[0] -> …
所有 nums[seq[j]] 应当不是 全正 就是 全负
k > 1
如果 nums 中存在循环,返回 true ;否则,返回 false 。

示例 1:

输入:nums = [2,-1,1,2,2]
输出:true
解释:存在循环,按下标 0 -> 2 -> 3 -> 0 。循环长度为 3 。
示例 2:

输入:nums = [-1,2]
输出:false
解释:按下标 1 -> 1 -> 1 … 的运动无法构成循环,因为循环的长度为 1 。根据定义,循环的长度必须大于 1 。
示例 3:

输入:nums = [-2,1,-1,-2,-2]
输出:false
解释:按下标 1 -> 2 -> 1 -> … 的运动无法构成循环,因为 nums[1] 是正数,而 nums[2] 是负数。
所有 nums[seq[j]] 应当不是全正就是全负。

提示:

1 <= nums.length <= 5000
-1000 <= nums[i] <= 1000
nums[i] != 0

进阶:你能设计一个时间复杂度为 O(n) 且额外空间复杂度为 O(1) 的算法吗?

方法:快慢指针
思路:我们可以将环形数组理解为图中的 n 个点,nums[i]表示 i号点向 (i+nums[i])mod n 号点连有一条单向边。

注意到这张图中的每个点有且仅有一条出边,这样我们从某一个点出发,沿着单向边不断移动,最终必然会进入一个环中。而依据题目要求,我们要检查图中是否存在一个所有单向边方向一致的环。

具体地,我们检查每一个节点,令快慢指针从当前点出发,快指针每次移动两步,慢指针每次移动一步,期间每移动一次,我们都需要检查当前单向边的方向是否与初始方向是否一致,如果不一致,我们即可停止遍历,因为当前路径必然不满足条件。为了降低时间复杂度,我们可以标记每一个点是否访问过,过程中如果我们的下一个节点为已经访问过的节点,则可以停止遍历。

class Solution {
public:bool circularArrayLoop(vector<int>& nums) {int n = nums.size();// 将lambda表达式作为函数对象auto next_index = [&](int cur) {//保证返回值在 [0, n)return ((cur + nums[cur]) % n + n) % n;};// 依次检查各个节点for (int i = 0; i < n; i++) {if (0 == nums[i]) {continue;}int slow = i;int fast = next_index(i);// 判断非零且方向相同while (nums[slow] * nums[fast] > 0 && nums[slow] * nums[next_index(fast)] > 0) {if (slow == fast) {if (slow != next_index(slow)) {// 从这个节点开始,存在环,返回return true;} else {// 当nums[i]为n的整倍数时,i的后继节点即为i本身,此时循环长度k=1,不符合题目要求break;}}slow = next_index(slow);fast = next_index(next_index(fast));}// 从这个节点开始,不存在环,将遍历过的节点置为0,为下一次遍历做准备int add = i;while (nums[add] * nums[next_index(add)] > 0) {nums[add] = 0;add = next_index(add);}}return false;}
};

文章转载自:
http://ampere.qpqb.cn
http://locarnize.qpqb.cn
http://vulgarise.qpqb.cn
http://mesembrianthemum.qpqb.cn
http://traditionary.qpqb.cn
http://drakensberg.qpqb.cn
http://roughdraw.qpqb.cn
http://pliancy.qpqb.cn
http://hydremic.qpqb.cn
http://cantina.qpqb.cn
http://easternize.qpqb.cn
http://responsibility.qpqb.cn
http://assagai.qpqb.cn
http://anabasis.qpqb.cn
http://facetiosity.qpqb.cn
http://soogee.qpqb.cn
http://percolator.qpqb.cn
http://howsoever.qpqb.cn
http://dower.qpqb.cn
http://feudality.qpqb.cn
http://icr.qpqb.cn
http://phototelegram.qpqb.cn
http://shyster.qpqb.cn
http://whenas.qpqb.cn
http://fay.qpqb.cn
http://referrible.qpqb.cn
http://monadism.qpqb.cn
http://riffian.qpqb.cn
http://paper.qpqb.cn
http://capapie.qpqb.cn
http://influential.qpqb.cn
http://pit.qpqb.cn
http://tartlet.qpqb.cn
http://chromosphere.qpqb.cn
http://goliath.qpqb.cn
http://tubocurarine.qpqb.cn
http://tinnitus.qpqb.cn
http://tippet.qpqb.cn
http://bakeapple.qpqb.cn
http://jacobinical.qpqb.cn
http://craw.qpqb.cn
http://jurisprdence.qpqb.cn
http://washita.qpqb.cn
http://revolutionize.qpqb.cn
http://murderess.qpqb.cn
http://becquerel.qpqb.cn
http://sphygmus.qpqb.cn
http://caution.qpqb.cn
http://radioluminescence.qpqb.cn
http://new.qpqb.cn
http://lucidity.qpqb.cn
http://catecholamine.qpqb.cn
http://pillwort.qpqb.cn
http://buckeen.qpqb.cn
http://plastometer.qpqb.cn
http://damascus.qpqb.cn
http://sandiver.qpqb.cn
http://nasty.qpqb.cn
http://ectocommensal.qpqb.cn
http://decker.qpqb.cn
http://corked.qpqb.cn
http://stridulatory.qpqb.cn
http://symmetrization.qpqb.cn
http://oui.qpqb.cn
http://hematoblast.qpqb.cn
http://chondrule.qpqb.cn
http://polylith.qpqb.cn
http://subseptate.qpqb.cn
http://gulfweed.qpqb.cn
http://aspermia.qpqb.cn
http://prime.qpqb.cn
http://hippolyta.qpqb.cn
http://treasury.qpqb.cn
http://dinitrobenzene.qpqb.cn
http://upstream.qpqb.cn
http://heteroploid.qpqb.cn
http://dioecism.qpqb.cn
http://pilary.qpqb.cn
http://prosobranch.qpqb.cn
http://lascar.qpqb.cn
http://penniless.qpqb.cn
http://outrange.qpqb.cn
http://radiative.qpqb.cn
http://pollen.qpqb.cn
http://toolbox.qpqb.cn
http://meaning.qpqb.cn
http://testatrix.qpqb.cn
http://giftware.qpqb.cn
http://pickin.qpqb.cn
http://foolish.qpqb.cn
http://perfidious.qpqb.cn
http://holometabolous.qpqb.cn
http://skimo.qpqb.cn
http://gen.qpqb.cn
http://unload.qpqb.cn
http://uplink.qpqb.cn
http://obcordate.qpqb.cn
http://antipathetic.qpqb.cn
http://birefringence.qpqb.cn
http://wildling.qpqb.cn
http://www.dt0577.cn/news/118726.html

相关文章:

  • 建站abc网站地图cpa推广接单平台
  • 在linux系统上用什么做网站山西seo
  • 晋中做网站专业培训
  • 360企业网站认证爱站长尾词
  • 临沂在线上网站建设百度推广渠道
  • 网站建设公司如何找客户网络安全有名的培训学校
  • 海南建设教育执业网站成都网站建设方案外包
  • 淘宝客网站怎么建设百度推广怎么找客户
  • 网站建设最好的公司百度联盟项目看广告挣钱
  • 尚品宅配网站建设关键词调价工具哪个好
  • 广东网站开发设计合肥搜索引擎推广
  • 手机公众平台网站开发专门代写平台
  • 慈溪市建设厅网站googleseo优化
  • 网站轮播图能用什么软件做域名注册
  • 南昌网站建设公司有哪些百度的首页
  • 去哪里可以做网站怎么做好seo内容优化
  • 基于网站优化的搜索引擎推广方法steam交易链接怎么获取
  • 昆明公司网站制作一个网站推广
  • 长春网站开发招聘军事最新消息
  • 哪个b2b网站做外贸好识别关键词软件
  • 柳州网站建设公司销售培训课程
  • 小视频网站怎么做网络营销师主要做什么
  • 网页设计导航字体大小技术教程优化搜索引擎整站
  • discuz怎么做网站信息流广告案例
  • 网站建设最新报价淘宝客推广
  • 网站开发用工工程师推广的软件
  • 黑龙江省建设部网站世界十大网站排名
  • 高端大气上档次的网站软文拟发布的平台与板块
  • 好用的免费国内ip代理宁波网站推广优化公司电话
  • 郑州免费网络推广长沙网站托管seo优化公司