[LeetCode]Merge Two Sorted Lists

題目:

Merge Two Sorted Lists

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.


來源:http://oj.leetcode.com/problems/merge-two-sorted-lists/


思路:

很基本的鏈表操作。

C++ AC代碼:

/**
 * 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 *head = NULL;   
        ListNode *newList = head;
		
		if(l1 == NULL)  
            return l2;
        if(l2 == NULL) 
            return l1;  
			
		while( l1 != NULL && l2 != NULL ){
		  if(l1->val < l2->val){
		    newList->next = l1;
			l1=l1->next;
		  }
		  else{
		    newList->next = l2;
			l2=l2->next;
		  }
		  newList=newList->next;
		}
		
        if(l1 != NULL) 
          newList->next = l1;  
 
        if(l2 != NULL)  
          newList->next = l2; 
			
        return head->next; 
    }
};
運行時間 52ms
發佈了55 篇原創文章 · 獲贊 9 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章