美文网首页
数据结构与算法--跳表

数据结构与算法--跳表

作者: zhujunhua | 来源:发表于2020-12-23 13:58 被阅读0次

跳表是一种各方面性能都比较优秀的动态数据结构,可以支持快速地插入、删除、查找操作,写起来也不复杂,甚至可以替代红黑树(Red-black tree)。

跳表.png
这种链表加多级索引的结构,就是跳表

跳表的查找、插入、删除操作的时间复杂度都是 O(logn)。
跳表的空间复杂度是 O(n)。不过,跳表的实现非常灵活,可以通过改变索引构建策略,有效平衡执行效率和内存消耗。虽然跳表的代码实现并不简单,但是作为一种动态数据结构,比起红黑树来说,实现要简单多了。所以很多时候,我们为了代码的简单、易读,比起红黑树,我们更倾向用跳表。

跳表的插入.png

参考:
极客时间:《数据结构与算法》王争, 17 | 跳表:为什么Redis一定要用跳表来实现有序集合?

相关文章

  • Skip List--跳表(全网最详细的跳表文章没有之一)

    跳表是一种神奇的数据结构,因为几乎所有版本的大学本科教材上都没有跳表这种数据结构,而且神书《算法导论》、《算法第四...

  • 算法概览

    重点掌握的数据结构与算法:10 个数据结构:数组、链表、栈、队列、散列表、二叉树、堆、跳表、图、Trie 树;10...

  • 《数据结构与算法之美》01——系统高效地学习数据结构与算法

    20个最常用的、最基础的数据结构与算法。 数据结构:数组、链表、栈、队列、散列表、二叉树、堆、跳表、图、Trie树...

  • 数据结构与算法——跳表

    什么是跳表 跳表全称为跳跃列表,它允许快速查询,插入和删除一个有序连续元素的数据链表。跳跃列表的平均查找和插入时间...

  • 数据结构与算法--跳表

    跳表是一种各方面性能都比较优秀的动态数据结构,可以支持快速地插入、删除、查找操作,写起来也不复杂,甚至可以替代红黑...

  • 数据结构与算法--跳表

    跳表 = 链表 + 多级索引 跳表使用空间换时间的设计思路,通过构建多级索引来提高查询的效率,实现了基于链表的“二...

  • 数据结构与算法:跳表

    定义: 跳表使用空间换时间的设计思路,通过为有序链表构建多级索引来提高查询的效率,实现了基于链表的“二分查找”。跳...

  • 数据结构 - 跳表skiplist

    更多数据结构内容,请参考:数据结构 - 概要 简介 漫画算法:什么是跳跃表? Redis 为什么用跳表而不用平衡树...

  • 有关跳跃表的干货都在这里

    跳表的数据结构 跳表全称叫做跳跃表,简称跳表。跳表是一个随机化的数据结构,实质就是一种可以进行二分查找的有序链表。...

  • HBase内存管理之MemStore

    基于跳表实现的MemStore基础模型 实现MemStore模型的数据结构是SkipList(跳表),跳表可以实现...

网友评论

      本文标题:数据结构与算法--跳表

      本文链接:https://www.haomeiwen.com/subject/sbwynktx.html