首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
Beney的技术花园
掘友等级
软件工程师
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
2
文章 2
沸点 0
赞
2
返回
|
搜索文章
最新
热门
反射
最近在研究 RPC 相关的 go 框架,在自己尝试实现注册中心的时候,感觉对反射又有了更深的理解。故就根据实现注册中心这个例子,稍微讲讲反射这个东西吧。 什么是注册中心 RPC 服务是一种典型的 C/
基于比较的经典7大排序
稳定的排序:稳定的排序算法是指该算法排完序后,原数组中相同元素的相对位置不改变。 基于比较的排序,复杂度最优为$O(nlgn)$。这个可以使用决策树进行证明,篇幅原因就不赘述了。 下面,基于升序排序我们把这七大一一过一遍吧。 1. 冒泡排序 Bubble Sort 暴力法,两两…
逻辑结构.树.B树家族
其他自平衡树(AVL、RB Tree)都是假设所有数据都存储在主存中。 B-Tree考虑的是==访问磁盘数据==的情况。 试想一下淘宝、拼多多等上亿的用户数据如果都放在主存中,那必然会出问题。主存是在运行时为运算提供数据的存储服务的,最优的方式应该是运算需要什么主存就存储什么;…
逻辑结构.树.AVL树
AVL树也是一种自平衡的BST,相比起红黑树,其维护平衡的限制条件相对较为简单:==对于树上的任意结点,左右子树的高度差不超过1==。 对于AVL树,维护平衡的主要手段就是旋转,讲红黑树的时候提到过,不再赘述。 AVL树无论是插入还是删除,都是BST插入/删除 + 自平衡。所以…
逻辑结构.树.红黑树
二叉查找树其实就是二分查找在数据结构上的体现,所以理想情况下在bst中搜索某个结点的时间复杂度为$O(lgn)$。但这只是理想情况,bst其实是不稳定的,若出现了斜树这种极端不平衡的情况,搜索复杂度就是线性的: 此时的树就已经退化成了链表。所以,为了维护二叉树的平衡性,在每次插…
从零实现一个简易rpc框架
所谓远过程调用通俗地讲,就是某个程序调用了远方另一个非本程序的方法,本质上就是进程之间的网络通信。更进一步说,每一个进程都有一个自己的地址空间,如果该进程调用的方法存在于本进程的地址空间,那么就是普通的本地调用;若该进程调用的方法不存在本进程的地址空间中,而是在另一个进程的地址…
逻辑结构.树.BST
BST全称Binary Search Tree,可见这个数据结构和搜索有着密切的关系,为什么要有这种数据结构呢?每一种新技术的出现必然是能够满足旧技术的功能,并且进一步补上一些旧技术的短板。回顾一下线性结构链表和数组,在这两种结构中进行某个值的搜索只能顺序遍历,效率较低;后来由…
哈夫曼压缩
计算机通过01构造出了丰富多彩的世界,图片、文本、视频……无论是何种形式的呈现,都是将01按照某种特定的规范排列。 但是将数据展示给我们看是一回事,数据的保存和传输又是另一回事:展示给人们的数据需要满足人的视觉体验,而保存和传输的数据并不需要满足计算机的视觉体验~计算机要做的就…
个人成就
文章被阅读
1,977
掘力值
65
关注了
23
关注者
0
收藏集
0
关注标签
11
加入于
2020-03-13