public static void Main(String[] args) { // int value; ComparisonDelegate delegateMy = objComparison; Tree theTree = new Tree(delegateMy); //создание дерева, вставка узлов theTree.insert(50, 1.5); theTree.insert(25, 1.2); theTree.insert(75, 1.7); theTree.insert(12, 1.5); theTree.insert(37, 1.2); theTree.insert(43, 1.7); theTree.insert(30, 1.5); theTree.insert(33, 1.2); theTree.insert(87, 1.7); theTree.insert(93, 1.5); theTree.insert(97, 1.5); theTree.displayTree(); theTree.SaveAsBinary(); theTree.SaveAsXML(); Tree obj = new Tree(); obj.OpenFromBinary(); obj.displayTree(); obj.OpenFromXML(); obj.displayTree(); Console.ReadKey(); }
public void delegates_can_be_used_as_types() { var compare1 = new ComparisonDelegate(StringComparators.CompareLength); compare1("gio", "leo").Should().Be(true); var compare2 = new ComparisonDelegate(StringComparators.CompareContent); compare2("gio", "leo").Should().Be(false); }
public bool Check(IEnumerable <string> s1, IEnumerable <string> s2, ComparisonDelegate compare) { if (s1.Count() != s2.Count()) { return(false); } var pairs = s1.Zip(s2, (item1, item2) => new Tuple <string, string>(item1, item2)); return(pairs.All(p => compare(p.Item1, p.Item2))); }
/// <summary> /// Finds the element that satisfies the comparison delegate. /// </summary> /// <param name="d">Comparison delegate.</param> /// <param name="w">Parameter passed to delegate for comparison.</param> /// <returns>Returns the found element or Default if not found.</returns> /// throws ThreadInterruptedException. public T FindFirstOccurrence(ComparisonDelegate d, object w) { int k; T v = Default; AccessLock.WaitOne(); try { k = Head; while (k != Tail) { if (d(ContainerList[k], w)) { v = ContainerList[k]; break; } ++k; k %= MaxCapacity; } } finally { AccessLock.ReleaseMutex(); } return(v); }
public Tree(ComparisonDelegate del) { root = null; this.del = del; }