[算法练习]找到单向链表的中间节点
一个指针跑2步 一个指针跑一步 当跑2步的指针跑到终点后 另一个指针就跑到中间typedef struct _NODE
{
int data;
struct _NODE *next;
}NODE,*PNODE;
PNODE FindCenterLink(PNODE head)
{
PNODE pMid = head;
PNODE pRun = pMid;
if( head == NULL )
return NULL;
while( pRun )
{
pRun = pRun->next;
if( pRun != NULL )
{
pRun = pRun->next;
pMid = pMid->next;
}
}
return pMid;
}
页:
[1]