public void Add(SearchTreeNode <T> node) { if (GetChild(node) != null) { return; } add(node); }
private void add(SearchTreeNode <T> node) { if (node.Father != null) { node.Father.Remove(node); } node.Father = this; if (Children == null) { Children = new LinkedList <SearchTreeNode <T> >(); } Children.AddLast(node); }
public SearchTreeNode <T> GetChild(SearchTreeNode <T> child) { if (Children != null) { foreach (var item in Children) { if (item.FullName == child.FullName) { return(item); } } } return(null); }
public void Remove(SearchTreeNode <T> node) { if (Children != null) { foreach (var item in Children) { if (item.FullName == node.FullName) { node.Father = null; Children.Remove(item); return; } } } }