>} false;
}
// поіскTree Search (string value)
{(! IsEmpty ()) (int.Parse (this.Z). CompareTo (int.Parse (value)) == 1) (left! = null) this.left.Search ( value); (null); (int.Parse (this.Z). CompareTo (int.Parse (value)) == -1) (right! = null) this.right.Search (value); (null); return this; (null);
}
# region Відображення в строкуstring DisplayVN (Tree t)// Зверху вниз
{result = ""; + = tZ + ""; (t.left! = null) + = DisplayVN (t.left); (t.right! = null) + = DisplayVN (t.right); result;
} string DisplayLP (Tree t)// Зліва направо
{result = ""; (t.left! = null) + = DisplayLP (t.left); + = tZ + ""; (t.right! = null) + = DisplayLP (t.right); result;
} string DisplayNV (Tree t)// Справа наліво
{result = ""; (t.right! = null) + = DisplayNV (t.right); + = tZ + ""; (t.left! = null) + = DisplayNV (t.left); result;
}
# endregion Відображення в рядок
// перевірка порожнечі
public bool IsEmpty ()
{(this.Z == null) true; false;
}
// видалення елементаbool Delete (string value)
{q = new Tree (); (Search (value)! = null) (this.Z! = null) (int.Parse (this.Z). CompareTo (int.Parse (value )) == 1 && left! = null)// right.Delete (value) ;//=
{(left == null && right == null). Z = null; (left! = null) (right == null)
{= this.left;. Z = qZ; = q.left; = q.right;
}
{= right; (q.left! = null)
{(q.left.left! = null) = q.left;. Z = q.left.Z; (q.left.right == null). left = null;. left = q.left.right;
}
{. Z = qZ;. right = q.right;
}
}
{= right;. Z = qZ; = q.left; = q.right;
} true;
} return false; return false;
}
// Очищення пам'яті, займаної деревом
public void Dispose ()
{(this.Z! = null)
{(left! = null). Dispose (); (right! = null). Dispose ();. left = null;. right = null;. Z = null;
}
}
}
# endregion Tree
}
Додаток Б
Результати тестування
В
Рисунок 1
В
Малюнок 2