【1】题目
题目:输入两个递增排序的链表,合并这两个链表并使新链表中的结点仍然是按照递增排序的。
【2】思路
递归思想双链表
【3】代码
//合并链表
ListNode * Merge(ListNode * pHeadA, ListNode * pHeadB)
{
ListNode * ptrA, *ptrB, * mHead;
if (pHeadA==NULL)
{
return pHeadB;
}
else if (pHeadB == NULL)
{
return pHeadA;
}
ptrA = pHeadA;
ptrB = pHeadB;
if (ptrA->m_nValue <= ptrB->m_nValue)
{
mHead = ptrA;
mHead->m_pNext = Merge(mHead->m_pNext, pHeadB);
}
else
{
mHead = ptrB;
mHead->m_pNext = Merge(mHead->m_pNext, pHeadA);
}
return mHead;
}