public void Test2() { const string words = "What's in a name? That which we call a rose by any other name would smell as sweet."; var t = words.Split().Aggregate(ScheduledBinomialHeap <string> .Empty, (current, word) => ScheduledBinomialHeap <string> .Insert(word, current)); Assert.AreEqual("[[as: [sweet.]] -$- ]", DumpHeap(t)); var x = ScheduledBinomialHeap <string> .Merge(t, ScheduledBinomialHeap <string> .Empty); Assert.AreEqual("[[as: [sweet.]][a: [a: [call: [That: [which]], [we]], [in: [What's]], [name?]], [name: [smell: [would]], [other]], [any: [by]], [rose]]]", DumpHeap(x)); }
public void MergeTest() { const string data1 = "What's in a name?"; var ts1 = data1.Split().Aggregate(ScheduledBinomialHeap <string> .Empty, (current, word) => ScheduledBinomialHeap <string> .Insert(word, current)); const string data2 = "That which we call a rose by any other name would smell as sweet"; var ts2 = data2.Split().Aggregate(ScheduledBinomialHeap <string> .Empty, (current, word) => ScheduledBinomialHeap <string> .Insert(word, current)); var t = ScheduledBinomialHeap <string> .Merge(ts1, ts2); Assert.AreEqual("[[as: [sweet]][a: [a: [call: [That: [which]], [we]], [any: [by]], [rose]], [name: [smell: [would]], [other]], [in: [What's]], [name?]]]", DumpHeap(t)); }