首页 > 代码库 > leetcode------Merge Two Sorted Lists
leetcode------Merge Two Sorted Lists
标题: | Merge Two Sorted Lists |
通过率: | 33.1% |
难度: | 简单 |
Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two lists.
这个题算是数据结构的入门题目吧,两个非递减链表,合并成一个非递减链表,要考虑到两个链表长度不一样的问题就行了,其实就是健壮性的问题:
直接看代码就行了,我只提交了一次就通过了:
1 /** 2 * Definition for singly-linked list. 3 * public class ListNode { 4 * int val; 5 * ListNode next; 6 * ListNode(int x) { 7 * val = x; 8 * next = null; 9 * }10 * }11 */12 public class Solution {13 public ListNode mergeTwoLists(ListNode l1, ListNode l2) {14 ListNode newList=new ListNode(1);15 ListNode head=new ListNode(1);16 if(l1==null)return l2;17 if(l2==null)return l1;18 if(l1==null&&l2==null)return null;19 if(l1.val<=l2.val){20 newList.val=l1.val;21 l1=l1.next;22 }23 else{24 newList.val=l2.val;25 l2=l2.next;26 }27 head=newList;28 while(l1!=null&l2!=null){29 ListNode tmp=new ListNode(1);30 if(l1.val<=l2.val){31 tmp.val=l1.val;32 newList.next=tmp;33 newList=tmp;34 l1=l1.next;35 }36 else{37 tmp.val=l2.val;38 newList.next=tmp;39 newList=tmp;40 l2=l2.next;41 }42 }43 if(l1!=null)44 {45 newList.next=l1;46 }47 else if(l2!=null){48 newList.next=l2;49 }50 return head;51 }52 }
提交后我想想我写的效率应该不高,具体怎么效率高我还没有想好,我已经克制了递归的使用,递归就是效率低的一种表现。
leetcode------Merge Two Sorted Lists
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。