需要学习资料的+微信公众号 学习资源后台找我
本人比较忙 我看到了会在后台帮你,谢谢关注啦
题目描述
一个链表中包含环,请找出该链表的环的入口结点。
思路:设置两个引用 A和B 指向头,然后一个走一步,一个走两步,然后找到相等的结点,然后再另一个从头开始,分别都走一步最后相等的就是环的入口结点
代码如下:
/*
public class ListNode {
int val;
ListNode next = null;
ListNode(int val) {
this.val = val;
}
}
*/
public class Solution {
public ListNode EntryNodeOfLoop(ListNode pHead)
{
if(pHead.next == null)return null;
ListNode preA = pHead.next;
ListNode preB = pHead.next.next;
while(preA != preB){
preA = preA.next;
preB = preB.next.next;
}
preA = pHead;
while(preA != preB){
preA = preA.next;
preB = preB.next;
}
return preA;
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)