public void TableContainsItem() { NLBHT knuthTable = new NLBHT(); knuthTable.SetHashFunction(new MultFunc((Math.Sqrt(5) - 1) / 2)); knuthTable.Put("Jacob", 15); knuthTable.Put("Dog", "Candy"); Assert.AreEqual(knuthTable.Contains("Jacob"), true); // Assert.AreEqual(knuthTable.Contains("jacobi"), false); }
public void PrintHashTable() { NLBHT knuthTable = new NLBHT(); knuthTable.SetHashFunction(new MultFunc((Math.Sqrt(5) - 1) / 2)); knuthTable.Put("Paul", new MultFunc(1 / 3)); knuthTable.Put("Jacob", 15); knuthTable.Put("Paul", 1234); knuthTable.Put("Dog", "Candy"); Console.Write(knuthTable.ToString()); }
public void CreateHashtable() { NLBHT knuthTable = new NLBHT(); knuthTable.SetHashFunction(new MultFunc((Math.Sqrt(5) - 1) / 2)); knuthTable.Put("Paul", new MultFunc(1 / 3)); knuthTable.Put("Jacob", 15); knuthTable.Put("Dog", "Candy"); // Assert.AreEqual(knuthTable.Count, 3); Assert.AreEqual(expected: 7, actual: knuthTable.TabSize); }
public void AddCollection() { ICollection coll = new List <int>() { 13, 7, 11, 8, 19 }; NLBHT table = new NLBHT(new MultFunc((Math.Sqrt(5) - 1) / 2)); table.Put(coll); Assert.AreEqual(expected: coll.Count, actual: table.Count); }
public void CheckResizeTable() { NLBHT knuthTable = new NLBHT(); knuthTable.SetHashFunction(new MultFunc((Math.Sqrt(5) - 1) / 2)); knuthTable.Put("Paul", new MultFunc(1 / 3)); knuthTable.Put("Jacob", 15); knuthTable.Put("Dog", "Candy"); knuthTable.Put("Gregory", 10); Assert.AreEqual(knuthTable.TabSize, 6); Console.WriteLine(knuthTable.ToString()); }
public void AddItems(int size) { NLBHT table = new NLBHT(new MultFunc((Math.Sqrt(5) - 1) / 2)); string fileLocation = "../../../wikiwords.txt"; var tuples = WordParser.ParseFromFile(fileLocation, numLines: size); foreach (var tuple in tuples) { table.Put(tuple.Item1, tuple.Item2); } // Assert.AreEqual(table.Count, 100); Console.WriteLine(table.TabSize); Console.WriteLine("Table load factor = {0}", table.LoadFactor); }
public void TryPut() { NLBHT knuthTable = new NLBHT(); try { knuthTable.SetHashFunction(new ModFunc()); knuthTable.Put('c', new MultFunc(1 / 3)); knuthTable.Put('c', 15); } catch (ArgumentException ex) { Console.WriteLine("Attempted to add duplicated key"); } }
public void ClearTable() { NLBHT knuthTable = new NLBHT(); knuthTable.SetHashFunction(new ModFunc()); knuthTable.Put("Paul", new MultFunc(1 / 3)); knuthTable.Put("Jacob", 15); knuthTable.Put("Dog", "Candy"); knuthTable.Put("Gregory", 10); Console.WriteLine(knuthTable.ToString()); knuthTable.Clear(); Console.WriteLine(knuthTable.ToString()); }
public void CanRemoveItem() { NLBHT knuthTable = new NLBHT(); knuthTable.SetHashFunction(new ModFunc()); knuthTable.Put("Paul", new MultFunc(1 / 3)); knuthTable.Put("Jacob", 15); knuthTable.Put("Dog", "Candy"); knuthTable.Put("Gregory", 10); Console.WriteLine(knuthTable.ToString()); knuthTable.Remove("Dog"); Console.WriteLine("After removal"); Console.WriteLine(knuthTable.ToString()); // Assert.AreEqual(knuthTable.Count, 3); }