- 博客(15)
- 资源 (5)
- 收藏
- 关注
原创 红黑树学习笔记之红黑树的删除
1. 红黑树的规则 2. 双黑缺陷 3 BB-1通过关键码的旋转,消除超级节点的下溢。四. BB-2R4. BB-2B5. BB-36. 归纳 ...
2018-04-26 17:44:59 364
原创 红黑树学习笔记之红黑树的插入
附加知识点:1. 红黑树的规则2.“3+4”重构无论插入还是删除,无论是单旋还是双旋,最终效果应该都是这样一种形式。一. 双红缺陷1. 插入关键码e,并设T中文本不含e2. x=insert(e)必为末端节点,设x的父亲p=x->parent存在3. 将x染红(除非它是根),规则124依然满足,而3则不一定4. 双红(double-red):新插入的节点x与它的父亲p同时为红色=>双红...
2018-04-26 17:44:34 615
原创 红黑树学习笔记之红黑树的结构
一. 定义规则二. 实例1. 根节点是黑色。2. 该树已经做过一个预处理,为所有有需要的节点,都添加了一个或者两个外部节点,而这些外部节点都是假想,实际上并不存在。(注:在二叉树中,度数为0的节点就是外部节点,度数为2的节点就是内部节点)3.每一个红节点,其父亲及孩子都是黑的。4.外部节点到根,途中黑节点数目相等。 三. 提升变换为了更直观地理解红黑树的定义,将每一个红色的节点都向上提升至与它...
2018-04-26 17:43:46 357
原创 红黑树学习笔记之红黑树的动机
一. 初认红黑树节点具有颜色,红色或者黑色。二. 持久性无论是线性结构:向量,列表,栈,队列半线性结构:树非线性结构:图每当经过一次动态的操作,使得其中的逻辑结构发生变化之后,它都会随即完全的转入新的状态,同时将此前的状态完全的遗忘掉。这类结构因此称作ephemeral data structure。而Persistent structure支持对历史版本的访问。蛮力实现:每个版本独立保存;各版本...
2018-04-26 17:43:22 321
原创 B树学习笔记之B树的删除
B树的下溢发生于删除关键码后违反了B树的性质 。一. 旋转如果左右兄弟存在,则间接向左右兄弟借关键码 二. 合并B树高度的减少只会发生于根节点的两个孩子合并 。三. 实例1. 删除249不急于合并,先左顾右盼,向有兄弟接一个关键码。删除操作顺利结束。2. 删除619664没有左兄弟,右兄弟处于即将下溢的边缘临界状态,旋转技巧已不适用,选择合并。此时,父节点发生了下溢,继续合并。整棵B树的高度...
2018-04-26 17:41:25 13653 3
原创 B树学习笔记之B树的插入
一. 上溢插入新的关键码后违反了B树的性质,称为B树的上溢,此时需做分裂。二. 分裂1. 中位数2.等效于在父节点插入了一个新的关键码,父节点此时同样存在发生上溢的风险。三. 再分裂B树高度的增加一定伴随着分裂到根 。四. 实例这时一棵4阶B树,每个节点的分支至多是4,至少是2;等价的每个节点所包含的关键码数至多为3,至少为1。1. 插入555此时,该节点的关键码总数不超过3,插入操作顺利结束。2...
2018-04-26 17:41:00 1544 1
原创 B树学习笔记之B树的查找
只载入必需的节点到内存,尽可能减少I/O操作,非必需的存到外存。对于处于活跃状态的B树,根节点常驻于内存每个节点的关键码均已存成向量在存储了n个元素的4阶B树中查找,单个节点进行一次查找的时间复杂度为O(1)一. 实例这是一棵5阶的B树,(3,5)树,每个节点的分支数不得超过5,同时除根节点,一般节点所拥有的分支数也不得少于3;每个节点至多拥有4个关键码,除根节点外每个节点至少拥有2个关键码。1....
2018-04-26 17:40:25 6175 1
原创 B树学习笔记之B树的结构
每一个节点可有多个分叉所有底层节点的深度完全一致B树矮宽一. 多路平衡1. B树的设计者将其定义为一种平衡的多路(multi-way)搜索树 两层两层去考察节点,每一个节点及它的左右孩子合成一个超级节点。二. 还是I/O多级存储系统中使用B-树,可针对外部查找,大大减少I/O次数若有n=1G个记录,每次查找需要log(2,2^30)=30次I/O操作,每次只读出一个关键码,得不偿失。...
2018-04-26 14:48:30 955
原创 B树学习笔记之B树的动机
开场白:B树等效于BST。B树最初也是最主要的功能在于弥合不同存储级别之间在访问速度上的巨大差异,实现搞笑的I/O。现实中,内存的容量有限,系统存储容量的增长速度<<应用问题规模的增长速度。存储容量规模分级:物理上,存储器的容量越大/小,访问速度就越慢/快。类似于乘火车去广州采购粉笔,采购一支与采购一千支甚至一万支,其时间成本几乎是一样的典型的存储系统大多采用批量式的方式来支持读写操作...
2018-04-26 14:04:54 212
原创 伸展树学习笔记之双层伸展
一. 双层伸展构思精髓:向上追溯两层,而非一层。反复考察祖孙三代:g=parent(p),p=parent(v),v根据它们的相对位置,经两次旋转使得v上升两层,成为子树根。 二. 子孙异侧与AVL树双旋完全等效与逐层伸展别无二致三. 子孙同侧 四. 点睛之笔 第一次旋转在祖父的位置上进行,而非父亲的位置。step1: step2: ...
2018-04-25 18:09:22 815
原创 伸展树学习笔记之逐层伸展
伸展树一. 局部性Locality: 刚被访问过的数据,极有可能很快地再次被访问,这一现象在信息处理过程中屡见不鲜。 BST: 刚刚被访问过的节点,极有可能很快地再次被访问;下一个将要访问的节点,极有可能就在刚被访问过节点的附近。 连续的m次查找(m>>n=|BST|),采用AVL共需O(mlogn)时间二. 自适应调整 对于典型的线性结构列表,所...
2018-04-25 15:37:55 352
原创 Docker学习笔记
一. What is Docker?1. 官方解释:Docker is the world's leading software containerization platform2. Docker公司开发,开源,托管在Github,跨平台3. Docker属于Linux容器的一种封装,提供简单易用的容器使用接口。二. Docker解决的问题1. 更高效地利用系统资源由...
2018-04-24 10:22:40 240
原创 通过CDN为网站加速
目录 1 CDN概念1.1 例子1.2 普通访问形式与CDN访问形式对比2 CDN架构及配置3 CDN应用场景3.1 网站站点应用加速3.2 视音频点播/大文件下载分发加速3.3 视频直播加速3.4 移动应用加速4 阿里云CDN的操作4.1 HTTPS安全加速 4.2 内容回源设置4.3 节点缓存设置,访问控制设置...
2018-04-16 11:12:43 472
原创 协同过滤算法学习笔记
(通过观看慕课网Hadoop进阶总结出来的笔记:http://www.imooc.com/learn/890)一. 余弦相似度其他的相似度种类1.切比雪夫距离 2.欧式距离 3.皮尔森系数 4.曼哈顿距离 5.杰卡德距离二. 基于物品的协同过滤算法ItemCF算法思想:给用户推荐那些和他们之前喜欢的物品相似的物品1.用户行为与权重例子:用户:A,B,C商品:1,2,3,4,5,6...
2018-04-16 11:07:03 475
原创 大数据系列学习教程
厦门大学数据库实验室大数据系列学习教程:http://dblab.xmu.edu.cn/blog/HBase入门学习教程:https://blog.csdn.net/nosqlnotes/article/details/79647096HBase 深入浅出:https://www.ibm.com/developerworks/cn/analytics/library/ba-cn...
2018-04-08 15:27:09 365
基于ElasticSearch的搜房网源码.zip
2021-05-09
模拟soul的社交app源码.zip
2021-05-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人