public class LinkedListMergeDnQ<T extends java.lang.Comparable> extends java.lang.Object implements MergeEngine<T>
ARRAY_IS_EMPTY, DATA_TYPE_NOT_SUPPORTED_YET, DECIMAL_RADIX, DELIMITER_COMMA, ELEMENT_NOT_FOUND, LIST_IS_EMPTY, OPERATION_NOT_SUPPORTED_YET
Constructor and Description |
---|
LinkedListMergeDnQ() |
Modifier and Type | Method and Description |
---|---|
ListNode<T> |
merge2SortedLists(ListNode<T> list1,
ListNode<T> list2)
O(n+m) time and space recursive method to merge 2 sorted lists. |
ListNode<T> |
mergeKSortedLists(ListNode<T>[] sortedListsArray)
Merge K sorted lists, using divide-n-conquer technique Complexity: - Time: O(N * logK): N = total number of nodes and K = total number of lists. |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
checkArray, checkIntArray, checkList
public ListNode<T> mergeKSortedLists(ListNode<T>[] sortedListsArray)
merge2SortedLists(ListNode, ListNode)
method.mergeKSortedLists
in interface MergeEngine<T extends java.lang.Comparable>
public ListNode<T> merge2SortedLists(ListNode<T> list1, ListNode<T> list2)
merge2SortedLists
in interface MergeEngine<T extends java.lang.Comparable>