尝试合并两个排序的单链接列表时出现NullPointer异常

时间:2019-08-13 11:58:31

标签: java merge nullpointerexception linked-list

我正在尝试将两个排序的单链接合并,并且在比较两个列表项的值时遇到空指针异常。

我编写了一个类,其中接收两个排序的单链接列表,并在合并两个链接列表之后以排序的方式返回新的单链接列表

class Solution {
  public ListNode mergeTwoLists(ListNode l1, ListNode l2) {
      ListNode list = new ListNode();        
      ListNode temp = list;

      while(l1 != null || l2 != null){
          if(l1.val >= l2.val){
            ListNode newnode = new ListNode(l1.val);
              temp.next = newnode;
              temp = newnode;
              l1 =l1.next;
          } else {
              ListNode newnode = new ListNode(l2.val);
              temp.next = newnode;
              temp = newnode;
              l2= l2.next;
          }   
      }

      if(l1 == null){
          while(l2 != null){
          ListNode newnode = new ListNode(l2.val);
          temp.next = newnode;
          temp = newnode;
          l2 =l2.next;
          }
      }

        while(l1!=null){
          ListNode newnode = new ListNode(l1.val);
          temp.next = newnode;
          temp = newnode;
          l1 =l1.next;
          }

      return  list;
  }
}

运行时错误,我希望返回排序后的新单链接列表,但会得到空指针异常

0 个答案:

没有答案