/// <inheritdoc/> protected override BinarySearchTreeNode <T> InitializeNewNode(BinarySearchTreeNode <T> parentNode, T value = default) => new BinarySearchTreeNode <T>(parentNode, value);
/// <summary>Initializes a new instance of the <seealso cref="BinarySearchTreeNode{T}"/> class with a parent and children nodes. The base tree is considered to be that of the parent.</summary> /// <param name="parentNode">The parent node.</param> /// <param name="child1">The first child node.</param> /// <param name="child2">The second child node.</param> /// <param name="value">The value of the node.</param> public BinarySearchTreeNode(BinarySearchTreeNode <T> parentNode, BinarySearchTreeNode <T> child1, BinarySearchTreeNode <T> child2, T value = default) : base(parentNode, child1, child2, value) { }
/// <summary>Initializes a new instance of the <seealso cref="BinarySearchTree{T}"/> class with a root node.</summary> /// <param name="root">The root node.</param> public BinarySearchTree(BinarySearchTreeNode <T> root) : base(root) { }
/// <summary>Initializes a new instance of the <seealso cref="BinarySearchTreeNode{T}"/> class with a parent node, but no children nodes. The base tree is considered to be that of the parent.</summary> /// <param name="parentNode">The parent node.</param> /// <param name="value">The value of the node.</param> public BinarySearchTreeNode(BinarySearchTreeNode <T> parentNode, T value = default) : base(parentNode, value) { }