码迷,mamicode.com
首页 > 其他好文 > 详细

leetcode21

时间:2019-01-04 21:26:41      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:div   元素   val   tno   函数   str   lse   span   ++   

合并两个有序的链表,问题来源:https://leetcode.com/problems/merge-two-sorted-lists/

分析:本质是很简单的,归并排序中的一个小节。难点在于链表操作,容易出现失误。很久没碰c++手生的很。

  1. 链表的构造函数的声明问题
  2. struct结构的对象构建
  3. val元素,next元素的引用
  4. 关于是否有头指针的辨别

代码如下:

class Solution {
public:
    ListNode* mergeTwoLists(ListNode* ll1, ListNode* ll2) {
        ListNode* l3 = new ListNode(-1) ;
        
        
        ListNode* ll3;
        ll3 = l3;
        
        
        while(ll1 != NULL || ll2 != NULL){
            if((ll1 == NULL && ll2 != NULL) || (ll1 != NULL &&ll2 != NULL && (ll1->val > ll2->val))){
                ll3->next = new ListNode(ll2->val);
                ll2 = ll2->next;
            }else{
                ll3->next = new ListNode(ll1->val);
                ll1 = ll1->next;
            }
            ll3 = ll3->next;
        }
        
        return l3->next;
    }
};

 

leetcode21

标签:div   元素   val   tno   函数   str   lse   span   ++   

原文地址:https://www.cnblogs.com/maggie94/p/10222291.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!