利用快慢指针寻找链表的中间结点 落日映苍穹つ 2022-11-21 03:49 130阅读 0赞 利用快慢指针寻找链表的中间结点 基本思路:设置两个指针开始都指向头节点,然后让一个结点以步长为1一个步长为2当步长为2的指针走向终点时步长为1的结点正好走到中间位置(如果为结点为偶数则指向中间偏右) 代码实现: ListNode* middleNode(ListNode* head) { //使用快慢指针法找链表的中间结点 其中p为慢q为快 ListNode *p,*q; p=q=head; while(q && q->next){ p=p->next; q=q->next->next; } return p; }
还没有评论,来说两句吧...