当代码试图訪问空指针指向的内存时程序就会崩溃,从而导致鲁棒性问题。所以要对空链表单独处理。ListNode*Merge(ListNode*pHead1,ListN"/>

17.合并两个排序的链表

Posted jhcelue

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了17.合并两个排序的链表相关的知识,希望对你有一定的参考价值。

技术分享技术分享


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

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;
}





























以上是关于17.合并两个排序的链表的主要内容,如果未能解决你的问题,请参考以下文章

面试题17 合并两个排序的链表

剑指offer:面试题17合并两个排序的链表

《剑指offer》面试题17 合并两个排序的链表 Java版

17.合并两个排序的链表

剑指offer:合并两个排序的链表

JZ-016-合并两个排序的链表