public void WeissTest() { dictionary = new SplayDictionary <int, string>(); const int NUMS = 40000; const int GAP = 307; for (int i = GAP; i != 0; i = (i + GAP) % NUMS) { dictionary.Add(i, i.ToString()); } for (int i = 1; i < NUMS; i += 2) { dictionary.Remove(i); } Assert.AreEqual(new KeyValuePair <int, string>(2, "2"), dictionary.Minimum); Assert.AreEqual(new KeyValuePair <int, string>(NUMS - 2, (NUMS - 2).ToString()), dictionary.Maximum); for (int i = 2; i < NUMS; i += 2) { Assert.IsTrue(dictionary.ContainsKey(i)); } for (int i = 1; i < NUMS; i += 2) { Assert.IsFalse(dictionary.ContainsKey(i)); } }
public void RootValueTest() { var array = new[] { new KeyValuePair <int, string>(5, "five"), new KeyValuePair <int, string>(3, "three"), new KeyValuePair <int, string>(7, "seven") }; dictionary = new SplayDictionary <int, string>(array); Assert.IsTrue(dictionary.ContainsKey(5)); Assert.AreEqual("five", dictionary.Root.Value); Assert.AreEqual("three", dictionary.Left.Value); Assert.AreEqual("seven", dictionary.Right.Value); Assert.AreEqual("three", dictionary.Minimum.Value); Assert.AreEqual("seven", dictionary.Maximum.Value); }
public bool Contains(K item) { return(dictionary.ContainsKey(item)); }
public void ItemTest() { dictionary = new SplayDictionary <int, string>(); dictionary[1] = "one"; Assert.AreEqual(1, dictionary.Count); Assert.IsTrue(dictionary.ContainsKey(1)); Assert.AreEqual("one", dictionary[1]); dictionary[2] = "two"; Assert.AreEqual(2, dictionary.Count); Assert.IsTrue(dictionary.ContainsKey(1)); Assert.IsTrue(dictionary.ContainsKey(2)); Assert.AreEqual("one", dictionary[1]); Assert.AreEqual("two", dictionary[2]); dictionary[2] = "TWO"; Assert.AreEqual(2, dictionary.Count); Assert.IsTrue(dictionary.ContainsKey(1)); Assert.IsTrue(dictionary.ContainsKey(2)); Assert.AreEqual("one", dictionary[1]); Assert.AreEqual("TWO", dictionary[2]); dictionary[3] = "three"; Assert.AreEqual(3, dictionary.Count); Assert.IsTrue(dictionary.ContainsKey(1)); Assert.IsTrue(dictionary.ContainsKey(2)); Assert.IsTrue(dictionary.ContainsKey(3)); Assert.AreEqual("one", dictionary[1]); Assert.AreEqual("TWO", dictionary[2]); Assert.AreEqual("three", dictionary[3]); dictionary[3] = "three"; Assert.AreEqual(3, dictionary.Count); Assert.IsTrue(dictionary.ContainsKey(1)); Assert.IsTrue(dictionary.ContainsKey(2)); Assert.IsTrue(dictionary.ContainsKey(3)); Assert.AreEqual("one", dictionary[1]); Assert.AreEqual("TWO", dictionary[2]); Assert.AreEqual("three", dictionary[3]); }