![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 92
TZC⑥
这个作者很懒,什么都没留下…
展开
-
室友竟只在2021的最后一天就学会了哈希表
哈希概念通过某种函数(hashFunc)使元素的存储位置与它的关键码之间能够建立一一映射的关系,那么在查找时通过该函数可以很快找到该元素哈希方法中使用的转换函数称为哈希(散列)函数,构造出来的结构称为哈希表(Hash Table)(或者称散列表)映射方式1.直接定址法用数组与数据的相对映射或绝对位置建立索引关系,此时增删查改时间复杂度O(1)缺陷:1.如果数据范围很大,直接定制法会浪费大量的空间2.不能处理字符串,浮点数等数据,无法被拿来作为数组的索引适用于:整数,并且数据集中的情况2原创 2021-12-31 16:51:06 · 3532 阅读 · 24 评论 -
map,set底层数据结构红黑树
红黑树的概念①红黑树与AVL树一样都是平衡二叉搜索树②通过从任一节点到其叶子节点的所有路径上都包含相同数目的黑节点的限制,确保没有一条路径会比其他路径长出俩倍,因而是接近平衡红黑树的性质每个结点不是红色就是黑色根节点是黑色的如果一个节点是红色的,则它的两个孩子结点是黑色的(没有连续的红结点)对于每个结点,从该结点到其所有后代叶结点的简单路径上,包含相同数目的黑色结点每个叶子结点都是黑色的(此处的叶子结点指的是空结点)红黑树的极端情况针对第三点我们很容易想到两种极端情况原创 2021-12-03 16:53:13 · 2568 阅读 · 9 评论 -
集合背后的数据结构(一)
集合介绍可以看到集合类的基本接口是Collection接口,而Collection接口继承了Iterable接口:这个接口内部只有一个方法**public abstract Iterator iterator();**而这个迭代器对象依次访问集合中的元素接下来让我跟你们介绍一下迭代器Iterator:hasnext()方法:集合中有元素的时候返回true,否则返回false;next()方法:首先迭代器指向第一个元素的前面的空白部分,调用next后迭代器越过下一个元素,并且返回这个元素的引用;原创 2021-09-24 16:41:03 · 506 阅读 · 11 评论