Merge k Sorted Lists, is a LeetCode problem from linked-list subdomain. This problem has also been asked in companies like Google,Facebook during the interview. In this post we will see how we can solve this challenge in Swift

Problem Description

You can find the full details of the problem Merge k Sorted Lists at LeetCode


Time Complexity: O(mlogn), m stands for the length of one list, n stands for the number of lists

             Space Complexity: O(1)

Definition for singly-linked list.

public class ListNode {

public var val: Int

public var next: ListNode?

public init(_ val: Int) {

    self.val = val = nil



Please check the main.swift snippet for the solution.

This solution originally posted at: Github by @soapyigu