找到关于数据结构算法的346 篇文章

合并操作的摊销成本

Arnab Chakraborty
更新于 2020年1月2日 07:05:43

282 次浏览

计算合并操作的摊销成本是一项困难的任务。主要困难在于累积在随机操作序列的不同点执行的操作成本的巨大差异。虽然我们的设计目标受操作序列成本的影响,但根据操作序列的成本来定义操作的摊销成本的概念并没有什么结果。实现一个势函数来抵消实际成本的变化是处理这种情况的完美方法。在下一个主题中,我们将讨论摊销……阅读更多

配对堆的变体

Arnab Chakraborty
更新于 2020年1月2日 07:02:14

141 次浏览

配对堆可以是空堆,也可以是包含根元素和可能为空的配对堆列表的配对树。堆排序属性需要任何节点的父节点都不大于节点本身。以下描述考虑的是一个纯函数堆,不支持 decrease-key 操作。类型 PairingTree[Element] = Heap(element: Element, subheaps: List[PairingTree[Element]])类型 PairingHeap[Element] = Empty | PairingTree[Element]配对堆存在两种类型——最小配对堆和最大配对堆。当我们希望表示最小优先级队列时,实现最小配对堆;当我们希望表示最大优先级队列时,实现最大配对堆……阅读更多

配对堆

Arnab Chakraborty
更新于 2020年1月2日 06:59:56

695 次浏览

配对堆被定义为一种堆数据结构,具有相对简单的实现和极好的实际摊销性能。配对堆是堆排序的多路树结构,可以表示为简化的斐波那契堆。它们被认为是实现 Prim 最小生成树算法等算法的“可靠选择”,并支持以下操作(假设最小堆)——find-min——此函数负责返回堆的顶部元素。meld——此函数负责比较两个根元素,较小的元素保持结果的根,较大的元素及其子树作为子节点添加……阅读更多

可合并优先队列和倾斜堆

Arnab Chakraborty
更新于 2020年1月2日 06:57:05

594 次浏览

可合并优先队列定义随机可合并堆(也称为可合并堆或随机可合并优先队列)被定义为一种基于优先队列的数据结构,其中底层结构也是一个堆排序的二叉树。但是,对于底层二叉树的形状,没有硬性规定。优势这种方法比类似的数据结构具有许多优点。它提供了比其他数据结构更简单的方法。随机可合并堆的所有操作都易于应用,其复杂度边界中的常数因子很小。也不需要保持平衡条件,也不需要卫星……阅读更多

连通性、距离和生成树

Arnab Chakraborty
更新于 2020年1月2日 06:54:08

487 次浏览

生成树一个简单的定义是,树是一个与没有循环相关的连通图,其中循环让我们在不重复边的前提下从一个节点返回到自身。连通图 G 的生成树被定义为包含 G 的所有顶点的树。生成树通常用于互联网路由算法。在互联网中,计算机(节点)通常通过许多冗余的物理连接连接。图中生成树的总数。如果一个图是一个具有 n 个顶点的完全图,那么生成树的总数是 n(n-2),其中 n 表示……阅读更多

m叉树

Arnab Chakraborty
更新于 2020年1月2日 06:50:47

2K+ 次浏览

在计算机科学中,m叉树被定义为通常以以下方式分层表示的节点集合。树从根节点开始。树的每个节点都维护一个指向其子节点的指针列表。子节点的数量小于或等于 m。m叉树的典型表示实现了一个 m 个引用(或指针)的数组来存储子节点(注意,m 是子节点数量的上限)。m路搜索树a. 为空 b. 包含一个包含 b (1

势能法

Arnab Chakraborty
更新于 2020年1月2日 06:45:11

2K+ 次浏览

根据计算复杂性理论,势能法被定义为一种用于分析数据结构的摊销时间和空间复杂度的方法,它是衡量其在操作序列上的性能的指标,消除了不频繁但昂贵操作的成本。在势能法中,选择一个函数 Φ 来将数据结构的状态转换为非负数。如果 S 被视为数据结构的状态,则 Φ(S) 表示在摊销分析中已计算但尚未执行的工作。因此,可以将 Φ(S) 想象为计算在摊销分析中已考虑但尚未执行的工作量……阅读更多

树的左孩子右兄弟表示法

Arnab Chakraborty
更新于 2020年1月2日 13:13:38

676 次浏览

左孩子右兄弟表示法是 n 元树的不同表示法,它不是维护指向每个子节点的指针,而是每个节点只保存两个指针,第一个指针指向其第一个子节点,另一个指针指向其直接的下一个兄弟节点。这种新的转换不仅消除了对节点子节点数量的先验知识的需求,而且还将指针的数量限制在最多两个,因此使代码编写更加简单。在每个节点处,从左到右连接相同父节点的子节点。父节点应该连接……阅读更多

可合并优先队列操作

Arnab Chakraborty
更新于 2020年1月2日 06:36:10

490 次浏览

随机可合并堆(也称为可合并优先队列)支持许多常见操作。这些被称为插入、删除和搜索操作 findMin。插入和删除操作是根据可合并堆特有的附加操作 Meld(A1, A2) 来实现的。Meld合并(也称为合并)操作的基本目标是获取两个堆(通过获取每个堆的根节点),A1 和 A2,并将它们合并,返回单个堆节点作为结果。这个堆节点是包含来自两个以……为根的子树的所有元素的堆的根节点……阅读更多

公差累积

Arnab Chakraborty
更新于 2020年1月2日 06:33:44

721 次浏览

什么是装配公差累积分析?简而言之,装配公差累积分析被定义为当我们知道所有组件的公差值时,整个装配或装配特定间隙的公差值。装配公差链累积分析可以通过不同的方式完成。最简单的程序称为最坏情况法,我们在此处讨论。关于装配公差累积的最坏情况法讨论假设我们有如下所示的四个厚板的装配——四张板的厚度和公差显示在上图中。……阅读更多

上一页 1 ... 29 30 31 32 33 ... 35 下一页 (共35页)
广告