题解 | #链表中环的入口结点#
链表中环的入口结点
https://www.nowcoder.com/practice/253d2c59ec3e4bc68da16833f79a38e4
#include <bits/stdc++.h>
#include <cstddef>
/*
struct ListNode {
int val;
struct ListNode *next;
ListNode(int x) :
val(x), next(NULL) {
}
};
*/
class Solution {
public:
ListNode* EntryNodeOfLoop(ListNode* pHead) {
set <ListNode*> s;
while(pHead!=NULL){
auto p=s.find(pHead);
if(p!=s.end()){//已经存在,说明有环,且为pHead.
return pHead;
}else{
s.insert(pHead);
pHead=pHead->next;
}
}
return NULL;
}
};
