Paxos算法
paxos算法 Paxos 算法是一种分布式共识、一致性算法,解决的是多个节点在网络中达成一致的难题,特别是在 […]
paxos算法 Paxos 算法是一种分布式共识、一致性算法,解决的是多个节点在网络中达成一致的难题,特别是在 […]
背景 在mysql的分片中,使用取模运算作为分片策略,比如 id%5 肯定是在1~5区间内的,但是当出现节点问 […]
冒泡排序通过交换相邻元素来实现排序。通过添加一个标志位来实现提前返回,我们可以将冒泡排序的最佳时间复杂度优化到 […]
排序方式 以学号数据为例,假设数字的最低位是第 1 位,最高位是第 8 位,基数排序的流程如图 11-18 所 […]
排序方式 「计数排序 counting sort」通过统计元素数量来实现排序,通常应用于整数数组。 先来看一个 […]
前述几种排序算法都属于“基于比较的排序算法”,它们通过比较元素间的大小来实现排序。此类排序算法的时间复杂度无法 […]
排序方式 「堆排序 heap sort」是一种基于堆数据结构实现的高效排序算法。我们可以利用已经学过的“建堆操 […]
排序方式 「归并排序 merge sort」是一种基于分治策略的排序算法,包含图 11-10 所示的“划分”和 […]
「快速排序 quick sort」是一种基于分治策略的排序算法,运行高效,应用广泛。 快速排序的核心操作是“哨 […]
排序方式 「插入排序 insertion sort」是一种简单的排序算法,它的工作原理与手动整理一副牌的过程非 […]
排序方式 「冒泡排序 bubble sort」通过连续地比较与交换相邻元素实现排序。这个过程就像气泡从底部升到 […]
排序方式 「选择排序 selection sort」的工作原理非常简单:开启一个循环,每轮从未排序区间选择最小 […]
「二分查找 binary search」是一种基于分治策略的高效搜索算法。它利用数据的有序性,每轮缩小一半搜索 […]
「图 graph」是一种非线性数据结构,由「顶点 vertex」和「边 edge」组成。我们可以将图 G 抽象 […]
大顶堆和小顶堆 「堆 heap」是一种满足特定条件的完全二叉树,主要可分为两种类型,如图 8-1 所示。 「大 […]
B+树 B+树相对于B树有一些自己的优势,可以归结为下面几点。 单一节点存储的元素更多,使得查询的IO次数更少 […]
B树(B-Tree)多路平衡查找树。B树是一种多路搜索树,每个节点可以包含多个键和对应的值。相比于二叉搜索树, […]
按照搜索树[[11.【数据结构-非线性】二叉搜索树Binary Search Tree]]的规则插入 旋转 着 […]
在二叉搜索树章节中,我们提到了在多次插入和删除操作后,二叉搜索树可能退化为链表。这种情况下,所有操作的时间复杂 […]
如图 7-16 所示,「二叉搜索树 binary search tree」满足以下条件。 对于根节点,左子树中 […]