找单项链表中的中间节点
struct ListNode { int val; struct ListNode *next; };
ListNode* fast = head; ListNode* slow = head; while(fast->next && fast->next->next){ fast = fast->next->next; slow = slow->next; }
用这种方法找单项链表的中间节点,如果链表为奇数个节点,那么找到的节点就是中间的节点。对于偶数个节点的链表,找到的节点是中间位置节点中的前一个节点