您的位置:首页 > 其它

17.合并两个排序的链表

2015-07-08 16:54 211 查看




当代码试图访问空指针指向的内存时程序就会崩溃,从而导致鲁棒性问题。所以要对空链表单独处理。

ListNode* Merge(ListNode* pHead1, ListNode* pHead2)

{

if (pHead1 == NULL)

return pHead2;

else if (pHead2 == NULL)

return pHead1;

ListNode* pMergedHead = NULL;

if (pHead1->m_nValue < pHead2->m_nValue)

{

pMergedHead = pHead1;

pMergedHead->m_pNext = Merge(pHead1->m_pNext,pHead2);

}

else

{

pMergedHead = pHead2;

pMergedHead->m_pNext = Merge(pHead1, pHead2->m_pNext);

}

return pMergedHead;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: