public void Promote(BTreeNodeElement <T> elementToPromote, BTreeNode <T> smallerNode, BTreeNode <T> largerNode) { if (Parent == null) { Parent = new BTreeNode <T>(order, tree); tree.RootIs(Parent); } elementToPromote.NextInterval.Container = elementToPromote.PreviousInterval.Container = Parent; elementToPromote.PreviousInterval.NodePointer = smallerNode; elementToPromote.NextInterval.NodePointer = largerNode; Parent.Insert(elementToPromote); }
public void RootIs(BTreeNode <T> node) { root = node; }
public BTree(int order) { root = new BTreeNode <T>(order, this); }
public BTreeNodeElementInterstice(BTreeNode <T> pointer, BTreeNodeElement <T> smaller, BTreeNodeElement <T> larger) { Smaller = smaller; Larger = larger; NodePointer = pointer; }