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.
Defined in the custom header "CSCompositeSkipList.h".
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 |
T
is Assignable. N
is an int. S
is an int. R
is an RNG (is Default Constructible and supports rand() and drand()). None.
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 | 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 | 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 | 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& | 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!!! |