public void MergeTest4() { var heap1 = Enumerable.Range(0, 3).Aggregate(LazyParingHeap <int> .Empty, (current, i) => LazyParingHeap <int> .Insert(i, current)); var heap2 = Enumerable.Range(10, 4).Aggregate(LazyParingHeap <int> .Empty, (current, i) => LazyParingHeap <int> .Insert(i, current)); var heap = LazyParingHeap <int> .Merge(heap1, heap2); Assert.AreEqual("[0, [10, [13]; [11, [12]]]; [1, [2]]]", DumpHeap(heap, true)); }
public void MergeTest2() { var empty = LazyParingHeap <int> .Empty; var heap2 = Enumerable.Range(0, 8).Aggregate(LazyParingHeap <int> .Empty, (current, i) => LazyParingHeap <int> .Insert(i, current)); var heap = LazyParingHeap <int> .Merge(empty, heap2); Assert.AreSame(heap2, heap); }