zoukankan      html  css  js  c++  java
  • [LeetCode]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.

    解题思路:

     1 /**
     2  * Definition for singly-linked list.
     3  * struct ListNode {
     4  *     int val;
     5  *     ListNode *next;
     6  *     ListNode(int x) : val(x), next(NULL) {}
     7  * };
     8  */
     9 class Solution {
    10 public:
    11     ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) {
    12         if (!l1) return l2;
    13         if (!l2) return l1;
    14         
    15         ListNode dummy(-1);
    16         ListNode *p = &dummy;
    17         while (l1 != nullptr && l2 != nullptr) {
    18             if (l1->val < l2->val) {
    19                 p->next = l1;
    20                 l1 = l1->next;
    21             } else {
    22                 p->next = l2;
    23                 l2 = l2->next;
    24             }
    25             p = p->next;
    26         }
    27         
    28         if (!l1) {
    29             p->next = l2;
    30         } else {
    31             p->next = l1;
    32         }
    33         
    34         return dummy.next;
    35     }
    36 };
  • 相关阅读:
    64_l2
    64_l1
    64_k2
    64_k1
    64_j2
    64_j1
    64_g6
    64_g5
    64_g4
    64_g3
  • 原文地址:https://www.cnblogs.com/skycore/p/4941217.html
Copyright © 2011-2022 走看看