方法一:创建一个新链表的头节点,设置两个指针,分别指向两条链表的头节点,然后遍历比大小,通过新链表的头节点将其串联起来。
/*
struct ListNode {
	int val;
	struct ListNode *next;
	ListNode(int x) :
			val(x), next(NULL) {
	}
};*/
class Solution {
public:
    ListNode* Merge(ListNode* pHead1, ListNode* pHead2) {
        ListNode*big=new ListNode(0);
		 ListNode*p0=big;
		 ListNode*p1= pHead1;
		  ListNode*p2= pHead2;
		  while(p1!=NULL&&p2!=NULL)
		  {
			if(p1->val>p2->val)
			{
				p0->next=p2;
				p2=p2->next;
			}
			else {
			    p0->next=p1;
				p1=p1->next;
			}
			p0=p0->next;
		  }
		  if(p1!=NULL)
		  {
			p0->next=p1;
		  }
		  else {
		  p0->next=p2;
		  }
		  return big->next;
    }
};