XBidiCompositeSkipList< class T, unsigned int N, unsigned int S=0, class R = RNG >

Category: containers
Component type: type

Description

A XBidiCompositeSkipList is a base class for a user defined class that contains the same elements sorted and ordered in many different ways.

By using one of three different delegate containers, the user can manipulate the elements within the container.

Definition

Defined in the custom header "CSCompositeSkipList.h".

Template parameters

Parameter Description Default
T The XBidiContainerSkipList's value type.  
N The total amount of delegate containers.  
S The amount of delegate containers that are indexable. (XIndexedSkipList, XMultiAutoSkipList) 0
R The XBidiCompositeSkipList's random number generator, used for selection of levels per node. RNG

Type requirements

Public base classes

None.

Members

Member Where defined Performance Description
value_type XBidiCompositeSkipList The type of object, T, stored in the XMultiSkipList.
container_type XBidiCompositeSkipList Type of this container
size_type XBidiCompositeSkipList An unsigned integral type.
difference_type XBidiCompositeSkipList A signed integral type.
data_type XBidiCompositeSkipList Internal shared data type.
XBidiCompositeSkipList() XBidiCompositeSkipList O(1) Creates an empty container. Default probability of 25% and 8 levels.
XBidiCompositeSkipList(double probability, size_type maxLevel) XBidiCompositeSkipList O(1) Create an empty container with the specified probability and maximum levels.
XBidiCompositeSkipList(size_type maxNodes) XBidiCompositeSkipList O(1) Creates an empty container. Default probability of 25%. Maximum levels based on maxNodes.
XBidiCompositeSkipList(const container_type &source) XBidiCompositeSkipList O(m*n) Copy constructor. Copies all elements along with probability and maximum levels.
template<class InIt >
XBidiCompositeSkipList(InIt first, InIt last)
XBidiCompositeSkipList O(m*n*logn) Creates a container with a copy of the range.
Probability is 25% and maximum levels is 8.
template<class InIt >
XBidiCompositeSkipList(InIt first, InIt last,
                       double probability, size_type maxLevel)
XBidiCompositeSkipList O(m*n*logn) Creates a container with the specified probability and maximum levels
along with a copy of the range.
template<class InIt >
XBidiCompositeSkipList(InIt first, InIt last,
                       size_type maxNodes)
XBidiCompositeSkipList O(m*n*logn) Creates a container with a copy of the range.
Default probability of 25%. Maximum levels based on maxNodes.
~XBidiCompositeSkipList() XBidiCompositeSkipList O(m+n) Destructor. Clears list.
XList< T, node_type > ** getContainers() XBidiCompositeSkipList O(1) Returns delegate container array. Has size N.
XList< T, node_type >* Containers[N] XBidiCompositeSkipList O(1) Property that gives access to the delegate container array.
void clear() XBidiCompositeSkipList O(m+n) Erases all of the elements.
void destroy() XBidiCompositeSkipList O(m+n) Erases and deletes all of the elements.
size_type size() const XBidiCompositeSkipList O(1) Returns the size of the container.
bool empty() const XBidiCompositeSkipList O(1) true if the container's size is 0.
container_type&
operator=(const container_type &source)
XBidiCompositeSkipList O(m*n) The assignment operator. NOT IMPLEMENTED YET!!!
void swap(container_type &right) XBidiCompositeSkipList O(m) Swaps the contents of two containers. NOT IMPLEMENTED YET!!!

See also

XMultiSkipList, XMultiAutoSkipList, XIndexedSkipList,

 All Classes Files Functions Variables Typedefs