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

网站提权营销推广活动策划

网站提权,营销推广活动策划,自主网站建设,南充网站设计1.判断是否带环: 用快慢指针 slow指针一次走一步,fast指针一次走两步 当两个指针相遇时,链表带环;两个指针不能相遇时,当fast走到倒数第一个节点或为空时,跳出循环返回空指针。 那么slow指针一次走一步&a…

在这里插入图片描述
在这里插入图片描述

1.判断是否带环:

用快慢指针
slow指针一次走一步,fast指针一次走两步
当两个指针相遇时,链表带环;两个指针不能相遇时,当fast走到倒数第一个节点或为空时,跳出循环返回空指针。

那么slow指针一次走一步,fast指针一次走两步是否一定能追上呢?
在这里插入图片描述
fast永远比slow快一步,所以两者之间每走一次举例减少 1 即 N-1,N-2,N-3…0

那么fast一次走三步,slow一次走一步呢?

2.找第一个入环节点:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

假设环的节点数为C,环之外的节点数是L
这里可以分为三种情况:
N是偶数——>slow走第一圈追上
N是奇数,C-1是偶数——>一定能追上
N是奇数,C-1是奇数呢?

推导: 3L=L+n*C-N
2L=n * C-N
若 C为偶数,N为奇数,那么 n * C-N 不会是偶数
所以 N是奇数,C-1是奇数的情况不存在
结论:
slow走1步,fast走3步时一定能追上

3.代码实现:

struct ListNode *detectCycle(struct ListNode *head) {struct ListNode* slow=head;struct ListNode* fast=head;struct ListNode* meet=NULL;while(fast!=NULL&&fast->next!=NULL){slow=slow->next;fast=fast->next->next;if(slow==fast){meet=slow;goto next;}}return NULL;next:struct ListNode* cur=head;while(cur!=meet){cur=cur->next;meet=meet->next;}return meet;
}
http://www.hrbkazy.com/news/24360.html

相关文章:

  • 工信部备案查询网站湖南关键词网络科技有限公司
  • 网站资讯建设湖南网站建设推荐
  • 阿里与电信签订合作协议厦门谷歌seo
  • 西峰住房和城乡建设局网站现在推广什么app最挣钱
  • 门户网站开发过程关键词优化搜索排名
  • 郴州网站优化网站设计与网页制作
  • wordpress 输出内容关键词优化百家号
  • 公司有必要建设网站吗最新消息今天的新闻
  • 建筑人才招聘网站平台谷歌seo关键词优化
  • c 网站开发如何每天10点执行任务百度广告投放收费标准
  • 网站建设 博客公司注册流程
  • 静态网站如何做自适应移动端地推拉新app推广接单平台
  • 西安做网站科技有限公司长沙seo代理
  • 河南做网站哪家好福州模板建站哪家好
  • 网站百度快照怎么做网站页面优化方案
  • 响应式网站设计的要求成都seo达人
  • 东莞整合网站建设公司深圳做seo有哪些公司
  • 我是做网站怎么赚钱国家卫生健康委
  • 宿迁做网站公司北京朝阳区
  • 有了域名之后怎么做自己的网站指数基金有哪些
  • 学习做网页的网站seo优化师培训
  • 网站开发上海工资东莞seo收费
  • 北京市住房和建设委员会网站网站注册查询
  • 网站域名云服务器是什么中国工商业联合会
  • 医疗手机网站模板百度网址导航
  • ip地址被限制不能访问网站免费行情软件网站下载大全
  • 阿里云怎么注册域名seo外包公司兴田德润
  • 强 一级二级2022青岛百度推广优化
  • 成都网站设计排名的公司价格国内永久免费域名注册
  • 中国空间站机械臂重庆人力资源和社会保障网官网