学习——数据结构

数组

线性表

顺序表

ArrayList

Iterator

链表

单链表

双链表

LInkList

队列

堆栈

N个结点构成的有限集合

结点的度:结点的子树个数

二叉树:度为2的树

二叉排序树:左子树的所有的值小于根节点的值;右子树的所有的值大于根节点的值

平衡二叉树:左右结点的高度差不超过1的二叉排序树

需要旋转调整

哈夫曼树(最优二叉树):加权路径最小的二叉树

红黑树:(特殊的二叉树)(性能更优)

需要旋转调整、变色

从根到叶子的最长的路径不多于最短的可能路径的两倍长

图论

图由顶点(vertex)和边(edge)组成的一种结构。

邻接矩阵(二维数组)

图的遍历

1、深度优先算法

2、广度优先算法

图的最短路径树

关键路径

AVO网络拓扑排序

排序和查找

排序算法

十大排序算法:

冒泡排序,简单选择排序,简单插入排序,归并排序,堆排序,快速排序、希尔排序、计数排序,基数排序,桶排序

时间复杂度、空间复杂度

 快速排序  综合来说性能最好,用的最多

选择的基准,三取样划分和Dual-Pivot快排        

但是一般排序规模较小时,会改用插入排序或者其他排序算法

 查找

二分查找(折半查找)

内存缓存淘汰机制

1.FIFO (First In, First Out)

2.LFU (Least Frequently Used)        

3.LRU (Least Recently Used)

HashMap

顺序表和链表

Hash

Hash冲突

负载因子 0.75

问题:

布隆过滤器

是1970年由布隆提出的,布隆过滤器可以用于检索一个元素是否在一个集合中,因此它是一个空间效率极高的概率型算法;它实际上是一个很长的二进制向量和一系列随机映射函数;

优点:

仅仅保留数据的指纹信息,空间效率极高;

查询效率极高,时间复杂度为:O(n);

信息安全性较高;

不足:

存在一定的误判;(可以控制误判率)

数据删除困难;

Google Guava实现了布隆过滤器!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值