数据结构

1
数据结构
数据结构.............................................................................................................................1
1. 队列(Queue) ...........................................................................................................2
2. 集合..............................................................................................................................3
3. 链表..............................................................................................................................3
4. 关联数组......................................................................................................................3
5. 栈..................................................................................................................................3
6. 树..................................................................................................................................3
7. bitset(位图).............................................................................................................5
8. 堆..................................................................................................................................5
2
1. 队列(Queue)
操作受限的线性表数据结构
先进先出,FIFO
顺序队列
链式队列
循环队列
阻塞队列
生产者消费者模型
并发队列
3

CAS机制
compare and swap
属于乐观锁
不断自旋检测是否满足需要
缺点:开销大,因为是不断自旋;只能保证一个变量,不能保证代码块,代码
块需要用Synchronized。
存在ABA问题
ABA问题可以通过增加版本号来解决。
2. 集合
set
3. 链表
list
4. 关联数组
map
5. 栈
线程安全
内部使用数组,不够翻倍
6. 树
4
二叉树
两个叶子节点
二叉树遍历
前序遍历
先本身,再左,再右
中序遍历
先左,再本身,再右
后续遍历
先左,再右,再本身
时间复杂度On
完全二叉树
满足二叉树特征
叶子节点靠左排列,因为如果是数组的存储方式,完全二叉树可以节省空间
平衡二叉树
包括完全二叉树,满二叉树
任意一个节点左右子树高度相差不能大于1
二叉查找树
满足二叉树特征
5
任意一个节点,其左树中所有的值都小于这个节点的值,右边都大于这个节点
的值
红黑树
根节点是黑色
每个叶子节点都是黑色的空节点,也就是说叶子节点不存储数据。
任何相邻节点不能同时为红色,也就是说红色节点时被黑色节点隔开的。
每个节点,从该节点到达其可达叶子节点的所有路径,所包含相同数目的黑色
节点。
B,b+,b*树
Mysql索引结构
LSM树
LSM-tree是专门为key-value存储系统设计的
适用于写入频繁,查询不频繁的场景
7. bitset(位图)
布隆过滤器
8. 堆
堆是一个完全二叉树
任何一个阶段都大于左右节点的值

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值