您的位置:首页 > 编程语言 > C语言/C++

Leetcode 21. Merge Two Sorted Lists (Easy) (cpp)

2016-07-12 12:44 465 查看
Leetcode 21. Merge Two Sorted Lists (Easy) (cpp)

Tag: Linked List

Difficulty: Easy

/*

21. Merge Two Sorted Lists (Easy)

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.

*/
/**
* 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* prev = new ListNode(-1);
for (ListNode* p = prev;l1 != NULL || l2 != NULL; p = p -> next) {
int num1 = l1 == NULL? INT_MAX : l1 -> val;
int num2 = l2 == NULL? INT_MAX : l2 -> val;
if (num1 >= num2) {
p -> next = l2;
l2 = l2 -> next;
} else {
p -> next = l1;
l1 = l1 -> next;
}
}
return prev -> next;
}
};


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