您的位置:首页 > 其它

合并两个排序的链表

2014-02-23 02:29 197 查看
#include "stdafx.h"
#include <iostream>
/*
题目:合并两个排序的链表
输入两个递增排序的链表,合并这两个链表并使新链表中的结点仍然是按照递增排序的。
链表结点定义如下:
struct ListNode
{
int m_nValue;
ListNode *m_pNext;
}
*/
using namespace std;
struct ListNode
{
int m_nValue;
ListNode *m_pNext;
};
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;
}
int _tmain(int argc, _TCHAR* argv[])
{

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