题解 | #合并两个排序的链表#
合并两个排序的链表
https://www.nowcoder.com/practice/d8b6b4358f774294a89de2a6ac4d9337
import java.util.*; /* * public class ListNode { * int val; * ListNode next = null; * public ListNode(int val) { * this.val = val; * } * } */ public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param pHead1 ListNode类 * @param pHead2 ListNode类 * @return ListNode类 */ public ListNode Merge (ListNode pHead1, ListNode pHead2) { // write code here if(pHead1==null) return pHead2; if(pHead2==null) return pHead1; if(pHead1==null&&pHead2==null){ return null; } ArrayList<Integer> list =new ArrayList<>(); while(pHead1!=null){ list.add(pHead1.val); pHead1=pHead1.next; } while(pHead2!=null){ list.add(pHead2.val); pHead2=pHead2.next; } Collections.sort(list); ListNode newhead =new ListNode(list.get(0)); ListNode cur=newhead; for(int i=1;i<list.size();i++){ cur.next=new ListNode(list.get(i)); cur=cur.next; } return newhead; } }