题解 | #合并k个已排序的链表#

合并k个已排序的链表

https://www.nowcoder.com/practice/65cfde9e5b9b4cf2b6bafa5f3ef33fa6

import java.util.*;
/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode(int x) {
 *         val = x;
 *         next = null;
 *     }
 * }
 */
public class Solution {
    public ListNode mergeKLists(ArrayList<ListNode> lists) {
        if (lists.size() == 0) {
            return null;
        }
        for (int i = 0; i < lists.size() - 1; i++) {
            ListNode left = lists.get(i);
            ListNode right = lists.get(i + 1);

            ListNode m = Merge(left, right);
            lists.add(m);
            i += 1;
        }

        return lists.get(lists.size() - 1);
    }


    public ListNode Merge(ListNode list1, ListNode list2) {

        if (list1 == null || list2 == null) {
            if (list1 != null) {
                return list1;
            }
            return list2;
        }

        ListNode head = new ListNode(-1 );
        ListNode p = head;
        while (list1 != null && list2 != null) {
            ListNode temp1Node, temp2Node;
            temp1Node = list1.next;
            temp2Node = list2.next;
            ListNode curNode = new ListNode(-1);

            if (list1.val < list2.val) {
                curNode.val = list1.val;
                curNode.next = head.next;
                head.next = curNode;
                head = head.next;
                list1 = temp1Node;
            } else {
                curNode.val = list2.val;
                curNode.next = head.next;
                head.next = curNode;
                head = head.next;
                list2 = temp2Node;
            }
        }
        if (list1 != null) {
            head.next = list1;
        }
        if (list2 != null) {
            head.next = list2;
        }

        return p.next;
    }
}

全部评论

相关推荐

1.&nbsp;事件概述3月10日下午,华为在“心声社区”发布长达6500字通报,曝光72名正式员工及19名非雇员在非雇员招聘中存在徇私舞弊行为,多人出卖公司信息资产获利,引发热议。-&nbsp;“非雇员”一般指华为OD员工,与人力服务公司签劳动合同,以派遣方式到华为工作,薪资待遇与华为内部员工基本一致,可通过考核转正。2.&nbsp;相关传言与真相华为相关人士称暂无官方回应,很多传言细节不准确。&nbsp;华为成都研究所员工透露,此次通报主要涉及成都研究所的数据存储部门,整个数据存储业务约100余人,此次明文通报除名辞退或通报批评的有62名,“很多部门基本全开除”&nbsp;。网传任正非亲赴成都、封楼抓人等消息不实。早在2024年年中,就有...
七安有出处嘛:省流:任正非亲赴成都等消息不实,2024 年年中就有人举报了;涉及36名违规当事人,其中有13人被除名;10人有主动申报情节或情节较严重的,予以辞退处理;另有13人被劝退、个人职级降3等。另外还有26名相关管理责任人作为直接或间接管理者,被处以个人职级降6等,冻结个人涨薪、职级晋升、干部向上任命,冻结期6—12个月不等;若下属违规偶发,则仅通报批评。并没有释放100HC😂😂😂
点赞 评论 收藏
分享
01-23 19:12
门头沟学院 Java
榨出爱国基因:你还差 0.1% 就拿到校招礼盒,快叫朋友给你砍一刀吧
投递拼多多集团-PDD等公司10个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务