滨州网站建设九鲁,江苏建设人才考试网是啥网站,多语言站点 wordpress,营销类网站建设23.合并K个升序链表 方法#xff1a;顺序合并
在前面已经知道合并两个升序链表的前提下#xff0c;用一个变量ans来维护以及合并的链表#xff0c;第i次循环把第i个链表和ans合并#xff0c;答案保存到ans中
/*** Definition for singly-linked list.* public class List…23.合并K个升序链表 方法顺序合并
在前面已经知道合并两个升序链表的前提下用一个变量ans来维护以及合并的链表第i次循环把第i个链表和ans合并答案保存到ans中
/*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}* ListNode(int val) { this.val val; }* ListNode(int val, ListNode next) { this.val val; this.next next; }* }*/
class Solution {public ListNode mergeKLists(ListNode[] lists) {ListNode ans null;for(int i 0;ilists.length;i){ans mergeTwoLists(ans,lists[i]);}return ans;}//合并两个有序链表public ListNode mergeTwoLists(ListNode a,ListNode b){if(a null || b null){return a ! null ? a : b;}ListNode head new ListNode(0); //定义一个头节点ListNode tail head, aPtr a, bPtr b;while(aPtr ! null bPtr ! null){if(aPtr.val bPtr.val){tail.next aPtr;aPtr aPtr.next;}else{tail.next bPtr;bPtr bPtr.next;}tail tail.next;}tail.next (aPtr ! null ? aPtr : bPtr);return head.next;}
}