数据结构
已收录文章:37篇
-
本篇内容,是本人查阅国内外各类作者的文章和视频后,对此作出的总结。如果文章有错漏的地方,欢迎大家指正。这篇文章的主要内容为,推导出在关系型数据库中,为何常选用B+树作为索引358 收藏
-
SplPriorityQueue 是最大堆,同优先级元素的取出顺序没有稳定性保证。本文用可运行示例解释 compare 返回值、数组优先级和稳定顺序的实现边界。358 收藏
-
前言 本文主要给大家介绍了关于Golang中数据结构Queue实现的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 需求 队列的特性较为单一,基本操作即初始化、323 收藏
-
在之前的文章中,我们有说过bitmap,bitmap在很多场景可以应用,比如黑白名单,快速判定,登录情况等等。总之,bitmap是以其高性能出名。其基本原理是一位存储一个标识,其他衍生知道咱310 收藏
-
双链表 双链表 (Doubly Linked List),每个节点持有一个指向列表前一个元素的指针,以及指向下一个元素的指针。 双向链表的节点中包含 3 个字段: 数据域 Value一个 Next 指针指向双链表中的下280 收藏
-
1. map的使用 golang中的map是一种数据类型,将键与值绑定到一起,底层是用哈希表实现的,可以快速的通过键找到对应的值。 类型表示:map[keyType][valueType] key一定要是可比较的类型(可267 收藏
-
1.为什么使用索引? 假如给数据使用 二叉树 这样的数据结构进行存储,如下图所示 2.索引的优缺点 MySQL 官方对索引的定义为: 索引(Index )是帮助 MySQL 高效获取数据的数据结构 。索引的本265 收藏
-
一、认识二叉树 首先,在了解 mysql 中的 B+ 树之前,我们需要搞懂什么是二叉树。二叉树是一种常见的非线形数据结构,数据是以一对多的形态组织起来的,我画了一张图来帮助你理解: 在二238 收藏
-
在上一篇中我们已经介绍过了Redis有5种数据类型,但每一种数据类型底层的实现都是不同的,在学习Redis时,我们除了要掌握这5种数据类型外,还要了解它们具体的底层实现,这有助于我们223 收藏
-
Redis 的 SMISMEMBER 可以一次判断多个成员是否属于同一个 Set,并按请求顺序返回 0/1 结果。本文用购物车权益集合核对重复成员、空键、返回映射和 ACL 只读权限边界。207 收藏
-
活动报名、接口去重、用户访问统计里经常会用 Redis Set。本文从“页面显示人数不对”的现场开始,逐步验证 SADD 返回值、SCARD 数量、Key 粒度和过期策略,整理一套更稳的 Set 去重写法。194 收藏
-
希尔排序 在插入排序中,在待排序序列的记录个数比较少,而且基本有序,则排序的效率较高。 1959 年,Donald Shell 从“减少记录个数” 和 “基本有序” 两个方185 收藏