class Solution { public: ListNode* EntryNodeOfLoop(ListNode* pHead) { ListNode* p = pHead; while (p->next) { if(p->next->val <= p->val){ //说明有环 return p->next; } p = p->next; } return nullptr; } }; 非常简单的几行代码,只要找到某个结点的下一个结点的值是否大于当前结点就知道了