zoukankan      html  css  js  c++  java
  • 合并两个有序列表

    题目: 将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 

    考了关于链表的使用, 另外用New开辟的内存如果不释放容易造成内存泄漏。

    /**
     * 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 result = ListNode(-1);
            ListNode* prev = &result;
            while(l1 && l2) {
                if(l1->val <= l2->val) {
                    prev->next = l1;
                    l1 = l1->next; 
                } else {
                    prev->next = l2;
                    l2 = l2->next;
                }
                prev = prev->next;            
            }            
        prev->next = l1? l1:l2;
        return result.next;
        }
        
    };
    The Safest Way to Get what you Want is to Try and Deserve What you Want.
  • 相关阅读:
    decltype类型指示符
    vector的使用
    参数使用
    CSPS模拟 43
    CSPS模拟 41
    CSPS模拟 42
    NOIP模拟 40
    NOIP模拟 39
    NOIP模拟 38
    NOIP模拟 37
  • 原文地址:https://www.cnblogs.com/Shinered/p/11277901.html
Copyright © 2011-2022 走看看