Class
RBOrderedTreeBase<T>

Basic RBTree with ordering

Operation like Add and Remove are an O(2logN) operations. Operation Find is O(logN) operation.

Definition

Namespace:Telerik.Collections.Generic

Assembly:Telerik.WinControls.dll

Type Parameters:

T

Syntax:

cs-api-definition
public class RBOrderedTreeBase<T> : RBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>, IEnumerable<RBOrderedTreeNode<T>>, IEnumerable, IOrderedTree<T>, ISortedTree<T>, ITree<T>

Inheritance: objectRBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>RBOrderedTreeBase<T>

Derived Classes: RBOrderedMultiTree<T>RBOrderedTree<T>

Implements: IEnumerableIEnumerable<RBOrderedTreeNode<T>>IOrderedTree<T>ISortedTree<T>ITree<T>

Inherited Members RBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.mSyncRootRBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.mRootRBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.mCountRBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.Add(T)RBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.AddOrGet(T)RBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.Remove(T)RBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.Clear()RBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.Remove(RBOrderedTreeNode<T>)RBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.Find(T)RBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.First()RBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.Last()RBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.Next(RBOrderedTreeNode<T>)RBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.Previous(RBOrderedTreeNode<T>)RBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.Balance(RBTreeNodeBase<T, RBOrderedNodeParam>)RBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.NewNode()RBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.LeftRotate(RBTreeNodeBase<T, RBOrderedNodeParam>)RBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.RightRotate(RBTreeNodeBase<T, RBOrderedNodeParam>)RBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.Successor(RBTreeNodeBase<T, RBOrderedNodeParam>)RBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.Predecessor(RBTreeNodeBase<T, RBOrderedNodeParam>)RBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.Delete(RBTreeNodeBase<T, RBOrderedNodeParam>)RBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.DeleteFix(RBTreeNodeBase<T, RBOrderedNodeParam>)RBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.UniqueRBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.SyncRootRBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.RootRBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.CountRBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.Collection

Constructors

RBOrderedTreeBase(IComparer<T>, bool)

Tree constructor with comparer

Declaration

cs-api-definition
public RBOrderedTreeBase(IComparer<T> aComparer, bool aUnique)

Parameters

aComparer

IComparer<T>

aUnique

bool

RBOrderedTreeBase(bool)

Tree constructor

Declaration

cs-api-definition
public RBOrderedTreeBase(bool aUnique)

Parameters

aUnique

bool

Methods

GetByOrder(int)

Get item by order index This operation is O(logN) operation

Declaration

cs-api-definition
public RBOrderedTreeNode<T> GetByOrder(int idx)

Parameters

idx

int

Returns

RBOrderedTreeNode<T>

GetOrder(RBOrderedTreeNode<T>)

Get order index of item This operation is O(logN) operation

Declaration

cs-api-definition
public int GetOrder(RBOrderedTreeNode<T> aItem)

Parameters

aItem

RBOrderedTreeNode<T>

Returns

int

NewNode()

Create new node

Declaration

cs-api-definition
protected override RBTreeNodeBase<T, RBOrderedNodeParam> NewNode()

Returns

RBTreeNodeBase<T, RBOrderedNodeParam>

Overrides RBTreeBase<T, RBOrderedTreeNode<T>, RBOrderedNodeParam>.NewNode()