您的位置:首页 > 其它

常见链表操作之链表逆序

2018-01-17 11:13 393 查看
链表逆序也是比较常见的操作,注意断链接链!注意判断空状态!

LIST_NODE * ListNodeReverse(LIST_NODE * m_pHead)
{
if (m_pHead == NULL)
{
return NULL;
}
if (m_pHead->next == NULL)
{
return m_pHead;
}

LIST_NODE * m_pReverse = NULL;
LIST_NODE * m_pCurrent = m_pHead;

while(m_pCurrent != NULL)
{
LIST_NODE * pTemp = m_pCurrent; //保存当前节点
m_pCurrent = m_pCurrent->next; //将当前节点向下移动
pTemp->next = m_pReverse; //将保存的节点连接·到反向链表的头
m_pReverse = pTemp;         //将链表接上
}
return m_pReverse;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: