题目:
Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first
two lists.
解题思路:设立一个头节点,作为返回表的开头,取l1和l2的元素比较,将较小值所在节点插入返回表的表尾,然后取出元素的表的指针往后移,直到比较完某个表的所有元素。
代码:
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: ListNode *mergeTwoLists(ListNode *l1, ListNode *l2) { ListNode *Zero=new ListNode(0); ListNode *Head=Zero; while(l1!=nullptr&&l2!=nullptr){ if(l1->val>l2->val){ Zero->next=l2; l2=l2->next; }else{ Zero->next=l1; l1=l1->next; } Zero=Zero->next; } if(l1!=nullptr){ Zero->next=l1; } if(l2!=nullptr){ Zero->next=l2; } return Head->next; } };
【Leetcode】Merge Two Sorted Lists,布布扣,bubuko.com
【Leetcode】Merge Two Sorted Lists
原文:http://blog.csdn.net/ussam/article/details/22156813