首页 > 其他 > 详细

leetcode 21. Merge Two Sorted Lists

时间:2019-12-15 09:44:26      阅读:60      评论:0      收藏:0      [点我收藏+]

合并两个已经排好序的链表,注意需要用已有的节点组成新链表。这题与第4题很相似。

合并两个数组如下

    var newArray = []
    function merge(el) {
      newArray.push(el)
    }

    while (true) {
      if (nums1[a] < nums2[b]) {
        merge(nums1[a])
        a++
        continue
      }
      if (nums2[b] < nums1[a]) {
        merge(nums2[b])
        b++
        continue
      }
      if (a < nums1.length) {
        merge(nums1[a])
        a++
        continue
      }
      if (b < nums2.length) {
        merge(nums2[b])
        b++
        continue
      }
      return newArray
    }

合并两个链表差不多

var mergeTwoLists = function(l1, l2) {
    var dummy = new ListNode, node = dummy
    while(true){
      if (l1 && l2){
         if (l1.val <= l2.val) {
            node = node.next = l1;
            l1 = l1.next
          } else {
            node = node.next = l2;
            l2 = l2.next
          }
          continue
      }
      if(!l2 && l1){
          node =  node.next = l1
          l1 = l1.next
           continue
      }
      if(!l1 && l2){
          node =  node.next = l2
          l2 = l2.next
           continue
      }
      return dummy.next
      
  }
  return dummy.next
    
};

leetcode 21. Merge Two Sorted Lists

原文:https://www.cnblogs.com/rubylouvre/p/12041706.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!