网站常用素材,网页设计与制作平台,扬州市建设局网站 竣工备案,wordpress linux 伪静态这道题要用到快慢指针。
先解释一下什么是快慢指针。
快慢指针有两个指针#xff0c;走得慢的是慢指针#xff0c;走得快的是快指针。
在这道题#xff0c;我们规定慢指针一次走一步#xff0c;快指针一次走2步。 如果该链表有环#xff0c;快慢指针最终会在环中相遇走得慢的是慢指针走得快的是快指针。
在这道题我们规定慢指针一次走一步快指针一次走2步。 如果该链表有环快慢指针最终会在环中相遇如果没有环fast指针走到尾节点就结束循环
/*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/
bool hasCycle(struct ListNode *head) {struct ListNode*fasthead,*slowhead;while(fastfast-next){slowslow-next;fastfast-next-next;if(fastslow){return true;}}return false;
}
下面我将用数学工具证明一下其实就是简单的追及问题而已啦