您的位置:首页 > 编程语言 > C语言/C++

递归方法反转单向链表(C/C++)

2012-02-20 13:33 288 查看
struct Node* RevertLink_Recursive(struct Node* pHead)
{
if (NULL == pHead)
return NULL;
if (NULL == pHead->pNext)
return pHead;
struct Node* pCur = pHead->pNext; // 暂存pHead->pNext
struct Node* pNewHead = RevertLink_Recursive(pHead->pNext); // 返回反转后的头结点
pCur->pNext = pHead; // 连上前面的结点
pHead->pNext = NULL; // 反转后的单向链表的末尾结点置为空
return pNewHead;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: