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

合并k个已排序的链表

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

    public ListNode mergeKLists (ArrayList<ListNode> lists) {
        // write code here
        if (lists == null || lists.isEmpty()) return null;
    
        Iterator<ListNode> it = lists.iterator();
        ListNode res = it.next();
        while (it.hasNext()) res = merge(res, it.next());

        return res;
    }

    private ListNode merge(ListNode a, ListNode b) {
        if (a == null) return b; 
        if (b == null) return a; 

        if(a.val <= b.val) {
            a.next = merge(a.next, b);
            return a;
        } else {
            b.next = merge(b.next, a);
            return b;
        }
    }

全部评论

相关推荐

10-13 13:42
门头沟学院 Java
点赞 评论 收藏
分享
爱吃烤肠的牛油最喜欢...:50K是ssp了估计,ssp的人家多厉害都不用说,每年比例大概在百分之5左右
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务