Design Skip List

可以分为:

  • perfect skip list 代价是每次插入删除都可能让整个list重新构建

  • randomized skip list 对于每个插入节点,有1/2可能性上升到上一层节点

skip list class:

搜索skip list过程:

Element find(Element key)
{
    SkipListNode current=header;

    for(int i=maxLevel;i>=0;i--)
    {
        SkipListNode next=current.forward[i];
        while(cur.data<key)
        {
            current=next;
            next=current.forward[i];
        }
    }

    current=current.forward[0];

    if(current.data==key)return current.data;
    else return null;
}

results matching ""

    No results matching ""