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,
- Leetcode Merge k Sorted Lists problem solution in C
- Leetcode Merge k Sorted Lists problem solution in Java
- Leetcode Merge k Sorted Lists problem solution in Python
- Leetcode Merge k Sorted Lists problem solution in C#