题目:
找出单链表的中间元素
思路:
建立两个单链表。让第一个每次走两步,第二个每次走一步,当第一个走完时,第二个刚好走到中间。
代码:
Node *FindMiddle(Node *node)
{
Node *first, *second;
first = node;
second = node;
while(first != NULL && first->next != NULL && first->next->next != NULL)
{
first = first->next->next;
second = second->next;
}
return second;
}