刷题笔记(十一)——合并两个链表

刷题笔记(十一)——合并两个链表

题目描述

输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。

思路:采用递归方式

/*
struct ListNode {
	int val;
	struct ListNode *next;
	ListNode(int x) :
			val(x), next(NULL) {
	}
};*/
class Solution {
public:
    ListNode* Merge(ListNode* p, ListNode* q)
    {
        if(p==NULL)return q;
        if(q==NULL)return p;
        if(p->val<=q->val)
        {   p->next=Merge(p->next,q);
          return p;
        }
         else
         {
             q->next=Merge(p, q->next);
              return q;
         }
    }
};
发布了36 篇原创文章 · 获赞 19 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/GJ_007/article/details/105419392