首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
清尘闲聊
掘友等级
后端开发
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
26
文章 26
沸点 0
赞
26
返回
|
搜索文章
赞
文章( 26 )
沸点( 0 )
数据结构之「B+树」
B+树 是 B树 的扩展,允许有效的插入,删除和搜索操作。 在 B树 中,键和记录(数据)都可以存储在内部节点和叶子节点中。 然而,在 B+树 中,记录只能存储在叶节点上,而内部节点只能存储键值。 B+树 的叶节点以单链表的形式链接在一起,解决区间查询,以使搜索查询更加高效。 …
数据结构之「红黑树」
红黑树(Red–black tree)是一种自平衡二叉查找树。红黑树是每个节点都带有颜色属性的二叉查找树,颜色为红色或黑色。 1.节点要么是红色要么就是黑色,不能没有颜色。 2.根节点是黑色的。 3.所有叶子节点都是黑色的。 4.每个红色节点必须有两个黑色的子节点。 5.从任一…
数据结构之「树」
树 是由n(n>0)个有限节点组成一个具有层次关系的集合,一个父节点有 0 个或多个子节点。 用树结构来表示一对多的关系。 没有父节点的节点称为根节点。 每一个非根节点有且只有一个父节点。 除了根节点外,每个子节点可以分为多个不相交的子树。 每个节点都 0 个或多个子节点。 树…
经典问题之「分支预测」
说明没有用到条件判断语句没有排序和排好序的耗时很相近。 在现代处理器中,都引入了分支预测来提高指令流水线的性能。所以就导致排序后比没有排序快。 条件分支指令通常具有两路后续执行分支。即不采取(not taken)跳转,顺序执行后面紧挨JMP的指令;以及采取(taken)跳转到另…
数据结构之「双端队列」
双端队列(deque)是指允许两端都可以进行入队和出队操作的队列,deque 是 “double ended queue” 的简称。那就说明元素可以从队头出队和入队,也可以从队尾出队和入队。 双端队列其实和队列差不多的,只是更加灵活了,队头和队尾均可进行入队和出队操作。这里是基…
数据结构之「队列」
队列(queue)是只允许在一端进行插入操作,而在另一端进行删除操作的线性表。是一种先进先出(First In First Out)的线性表,简称 FIFO。允许插入的一端称为队尾,允许删除的一端称为队头。 队列有 2 种方式来存储:数组 和 链表。 数组我们都知道它是预先分配…
数据结构之「栈」
栈 是一种抽象的数据结构,只允许在有序线性数据集合的一段进行入栈和出栈操作,因此是按照后进先出(LIFO, Last In First Out)的原理操作元素。允许进行入栈和出栈的一端称为栈顶(TOP),另一端称为栈底(BOTTOM)。栈顶会随出栈入栈浮动的,当栈中元素个数为零…
数据结构之「链表」
链表是一种线性表,但并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针(Pointer)。因此它不需要分配连续的存储空间,也不需要预先固定元素的大小,它可以动态的添加删除元素,而且时间复杂度是O(1)。只不过查找某个元素时,时间复杂度是O(n)。 链表有多种不同…
数据结构之「数组」
数组是由相同类型的元素的集合所组成的数据结构并且是分配一块连续的内存来存储。利用元素的索引(index)可以计算出该元素对应的存储地址。 一维数组就是最简单的数组,就像 int[] data = {1,2,3}。 二维数组实质就是存储的一维数组,就像 int[][] data …
重构上一篇的测试
重复的代码就是坏味道。不光是业务代码需要重构,测试代码也需要重构。所以,我们来重构下前面写的测试代码。
下一页
个人成就
文章被点赞
115
文章被阅读
48,371
掘力值
1,286
关注了
14
关注者
49
收藏集
0
关注标签
27
加入于
2019-03-18