一般方法:把单链表遍历一遍,确定长度L,再次从头结点到L / 2,即可
高效方法:利用快慢指针
*tail *mid
其中指针tail是mid的两倍,也就是说当tail指向末尾节点时,mid正好指向中间节点
if(tail -> next -> next != NULL)
{
tail = tail -> next -> next;
mid =mid -> next;
}
一般方法:把单链表遍历一遍,确定长度L,再次从头结点到L / 2,即可
高效方法:利用快慢指针
*tail *mid
其中指针tail是mid的两倍,也就是说当tail指向末尾节点时,mid正好指向中间节点
if(tail -> next -> next != NULL)
{
tail = tail -> next -> next;
mid =mid -> next;
}