求有环单链表的环连接点位置
第一次碰撞点Pos到连接点Join的距离=头指针到连接点Join的距离,
因此,分别从第一次碰撞点Pos、头指针head开始走,相遇的那个点就是连接点。
在环上相遇后,记录第一次相遇点为Pos,连接点为Join,假设头结点到连接点的长度为LenA,连接点到第一次相遇点的长度为x,环长为R。
第一次相遇时,slow走的长度 S = LenA + x;
第一次相遇时,fast走的长度 2S = LenA + n*R + x;
所以可以知道,LenA + x = n*R; LenA = n*R -x;
int getLenA(Linklist list,LinkNode *meetNode){int lenA=0;LinkNode *fast = list;LinkNode *slow = meetNode;for(;;){fast = fast->next;slow = slow->next;lenA++;if(fast == slow)break;}return lenA;
}
求有环单链表的环连接点位置相关推荐
- 【数据结构与算法】带环单链表查找环的入口算法
带环单链表的故事 @不了解前尘往事的Reader,烦请阅读--<判断单链表是否有环的算法> 如何找带环单链表的环的入口 这里只说比较可行的算法吧. 思路一:HashSet第一个重复元素就是 ...
- 数据结构 - 如何找到有环单链表的环的入口位置(C++)
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! temp ...
- (不带头结点的)单链表增删查改,逆置单链表(两种方法),求两个单链表的第一个公共结点,合并两个单链表,单循环链表中判断第一个入环点,约瑟夫环
补充了每个算法的基本思想,并且画了思路图,源代码都经过调试成功 1.SlistNode.c文件 (1) (不带头结点的)单链表增删查改 #include "SlistNode.h" ...
- 证明利用快慢指针寻找有环单链表中环的起点算法
问题:给定一个有环单链表,找到链表中环的起点,也就是说,找到下图中的单链表中Join点: (本图来源于http://www.cnblogs.com/xudong-bupt/p/3667729.html ...
- 【数据结构与算法】判断两个无环单链表是否相交的算法
带环单链表的故事 @不了解前尘往事的Reader,烦请阅读--<判断单链表是否有环的算法> 不过我们这里不考虑带环单链表,且无环单链表相交也只是相交一次,不穿过,这是一种不算复杂的情况吧. ...
- 6-8 从单链表LA指定位置删除连续n个元素并插入单链表LB的指定位置 (10 分)
6-8 从单链表LA指定位置删除连续n个元素并插入单链表LB的指定位置 (10 分) 设指针la和lb分别指向两个无头结点单链表中的首元结点,试编写算法,从表la中删除自第i个元素起共len个元素,并 ...
- 带环单链表求入口节点原理
单链表求环长点击打开链接
- java 单链表约瑟夫环_java循环单链表实现约瑟夫环问题
package SingleLinkList; //节点类 class Node{ private int data; private Node next; public int getData() ...
- 单链表的环入口,环大小,解环
1.单链表是否有环 使用快慢指针,都从head出发,慢指针一次一步,快指针一次两步,如果两个指针相遇,说明链表有环,否则,快指针为null或其next为null,到达末尾节点 function has ...
最新文章
- Angular开发实践(一):环境准备及框架搭建
- 《构建高可用Linux服务器》样书
- 是是非非本寻常,我们要不要跳槽
- python常用单词下载_python编程词汇
- 76. Leetcode 295. 数据流的中位数 (堆-技巧一-固定堆)
- LeetCode 1111. 有效括号的嵌套深度(奇偶分离)
- 如何提高mysql查询效率_如何提高MySQL查询效率
- H5 --力导向图、关系图谱
- dash视频服务器本地搭建 (初探)
- 蒟蒻的SCAU第一周个人排位赛赛后感想
- 消防工程师 11.灭火器2 12.消防用电
- python re subn_python中的正则re.sub re.subn
- C++实验——自幂数(数学黑洞你怕不怕)
- 该结束这忙忙碌碌却又碌碌无为的生活了
- 专接本计算机与科学技术,计算机科学与技术专业专接本考什么
- cf修改游戏客户端是什么意思_网络游戏所谓的修改客户端是怎么回事?
- 一头扎进Maven3 (一)
- fjksldajfmlsdmfldsalf;md;lsfml;sdmfl;sad
- Redis压力测试报告
- 电脑端无需下载软件制作动图教程
热门文章
- 推荐.NET CF控件(Resco MobileForms Toolkit)
- 2008_12_24_星期三
- 创建ROS消息和服务---ROS学习第8篇
- 基于S3C2440A+SDRAM(K4M51163)
- 面试时,当你有权提问时,别客气,这是个逆转的好机会(内容摘自Java Web轻量级开发面试教程)...
- Codeforces Divisibility【水题】
- 接收蓝牙广播onReceive中getStringExtra()出现错误
- Android存储数据到本地文件
- 使用lisp函数控制cursor
- pygtk笔记--2.1:布局容器,VBox、Hbox、Alignment