leetcode 每日一题 21. Merge Two Sorted Lists

来源:互联网 发布:vb 双引号转义字符 编辑:程序博客网 时间:2024/06/02 19:42


写了很久···该忘的全忘了看来


最后发现有的判断条件写的不对,另外,可以给curr指针设终点。


详细的可以看注释


class Solution {public:    ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) {        ListNode* a=l1;        ListNode* b=l2;        ListNode* curr;        if(a==NULL) return l2;         if(b==NULL) return l1;                if(a->val<b->val) {curr=a;a=a->next;}        else {curr=b;b=b->next;}                ListNode* mynode=curr;                while(a!=NULL&&b!=NULL){   //这个判断条件也很关键            if(a->val<b->val){                curr->next=a;                a=a->next;            }            else{                curr->next=b;                b=b->next;            }           // curr->next->next = NULL; //关键的一句,设终点            curr=curr->next;        }        if(b!=NULL){   //这里直接用if就可以了,连接一下            curr->next=b;        }        if(a!=NULL){            curr->next=a;        }                            return mynode;    }};


0 0
原创粉丝点击