以前打比赛都是用C++,现在用Java有点不习惯,先来个简单的试试水。
注意:
- Java中是null不是NULL。
- Java中没有->,但是.差不多啦。
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */ //合并两个有序的列表 class Solution { public ListNode mergeTwoLists(ListNode l1, ListNode l2) { if(l1==null)return l2; if(l2==null)return l1; ListNode p1=l1,p2=l2; ListNode ans=new ListNode(0); ans.next=null; ListNode p=ans; while(p1!=null&&p2!=null) { int tmp_val=(p1.val<=p2.val?p1.val:p2.val); ListNode tmp=new ListNode(tmp_val); tmp.next=null; p.next=tmp; p=tmp; if(tmp_val==p1.val)p1=p1.next; else p2=p2.next; } if(p1!=null)p.next=p1; if(p2!=null)p.next=p2; return ans.next; } }
如果图片无法加载,请访问我的原博客