Example #1
0
        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));
        }
Example #2
0
        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);
        }