倒置链表(递归方式)
发布时间:2020-12-13 22:13:36 所属栏目:百科 来源:网络整理
导读:前面已经有一个循环形式的。 现在加一个递归形式。 当然,如果循环形式的已经写出,递归也就信手拈来。 源代码: struct ListNode{int nData;ListNode* pNext;}; ListNode* Reverse(ListNode* pPrev,ListNode* pCur){if (NULL == pCur-pNext){pCur-pNext = p
前面已经有一个循环形式的。 现在加一个递归形式。 当然,如果循环形式的已经写出,递归也就信手拈来。
源代码: struct ListNode { int nData; ListNode* pNext; }; ListNode* Reverse(ListNode* pPrev,ListNode* pCur) { if (NULL == pCur->pNext) { pCur->pNext = pPrev; return pCur; } ListNode* pNext = pCur->pNext; pCur->pNext = pPrev; return Reverse(pCur,pNext); } void Reverse(ListNode* &pHead) { if (NULL == pHead || NULL == pHead->pNext) return; pHead = Reverse(NULL,pHead); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |