Leetcode Merge k Sorted Lists problem solution in C++ programming

In the Leetcode Merge k Sorted Lists problem solution in C++ programming Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses.

You are given an array of k linked-lists lists, each linked-list is sorted in ascending order.

Merge all the linked-lists into one sorted linked-list and return it.

Example 1:

Input: lists = [[1,4,5],[1,3,4],[2,6]]
Output: [1,1,2,3,4,4,5,6]
Explanation: The linked lists are:
[
1->4->5,
1->3->4,
2->6
]
merging them into one sorted list:
1->1->2->3->4->4->5->6

Constraints:

  • k == lists.length
  • 0 <= k <= 104
  • 0 <= lists[i].length <= 500
  • -104 <= lists[i][j] <= 104
  • lists[i] is sorted in ascending order.
  • The sum of lists[i].length will not exceed 104.

Leetcode Merge k Sorted Lists problem solution in C++ programming

class Solution {
    public ListNode mergeKLists(ListNode[] lists) {
        if(lists == null){
        return null;
    }
    
    PriorityQueue<Integer> pq = new PriorityQueue<Integer>();
    
    for(int i = 0; i < lists.size(); i++){
        ListNode node = lists.get(i);
        while(node != null){
            pq.add(node.val);
            node = node.next;
        }
    }

    if(!pq.isEmpty()){
    ListNode result = new ListNode(pq.poll());
    
    //result.val = pq.poll();
    ListNode m = result;
    while(!pq.isEmpty()){
        result.next = new ListNode(pq.poll());
        result = result.next;
    }
        return m;
    }else{
        return null;
    }
        
    }
}

Also read,

By Neha Singhal

Hi, my name is Neha singhal a software engineer and coder by profession. I like to solve coding problems that give me the power to write posts for this site.

Leave a Reply

Your email address will not be published. Required fields are marked *