SkipTable<TValue> 类
跳表数据结构(升序版)
继承成员
命名空间: Fantasy.DataStructure.SkipTable
程序集: Fantasy.Net.dll
语法
public class SkipTable<TValue> : SkipTableBase<TValue>, IEnumerable<SkipTableNode<TValue>>, IEnumerable
类型参数
名称 | 描述 |
---|---|
TValue | 跳表中存储的值的类型。 |
构造函数
| 编辑本文 查看源代码SkipTable(int)
创建一个新的跳表实例。
声明
public SkipTable(int maxLayer = 8)
参数
类型 | 名称 | 描述 |
---|---|---|
int | maxLayer | 跳表的最大层数。 |
方法
| 编辑本文 查看源代码Add(long, long, long, TValue)
向跳表中添加一个新节点。
声明
public override void Add(long sortKey, long viceKey, long key, TValue value)
参数
类型 | 名称 | 描述 |
---|---|---|
long | sortKey | 节点的主排序键。 |
long | viceKey | 节点的副排序键。 |
long | key | 节点的唯一键。 |
TValue | value | 要添加的值。 |
重写
| 编辑本文 查看源代码Remove(long, long, long, out TValue)
从跳表中移除一个节点。
声明
public override bool Remove(long sortKey, long viceKey, long key, out TValue value)
参数
类型 | 名称 | 描述 |
---|---|---|
long | sortKey | 节点的主排序键。 |
long | viceKey | 节点的副排序键。 |
long | key | 节点的唯一键。 |
TValue | value | 被移除的节点的值。 |
返回
类型 | 描述 |
---|---|
bool | 如果成功移除节点,则为 true;否则为 false。 |