876. Middle of the Linked List
题目大意:返回一个list中间的元素,如果有两个则返回第二个;
解题思路:利用两个指针,一个步长为1一个为2,当2走到尾端,第一个走到的就是答案;
class Solution {
public:ListNode* middleNode(ListNode* head) {if(head==NULL || head->next==NULL) return head;ListNode* p1=head;ListNode* p2=head;while(p2!=NULL){if(p2->next !=NULL) ;else break;p1 = p1->next;p2 = p2->next;if(p2->next !=NULL) p2 = p2->next;}return p1;}
};