在计算机科学中,AVL树是最先发明的自平衡二叉查找树。AVL树得名于它的发明者 G.M. Adelson-Velsky 和 E.M. Landis,他们在 1962 年的论文 "An algorithm for the organization of information" 中发表了它。 一、AV ...
分类:
编程语言 时间:
2017-03-28 15:55:37
阅读次数:
271
SPFA算法 tarjan算法 Tarjan算法是用来求有向图的强连通分量的。 Tarjan算法是基于对图深度优先搜索的算法,每个强连通分量为搜索树中的一棵子树。搜索时,把当前搜索树中未处理的节点加入一个堆栈,回溯时可以判断栈顶到栈中的节点是否为一个强连通分量。 定义DFN(u)为节点u搜索的次序编 ...
分类:
其他好文 时间:
2016-11-02 17:25:33
阅读次数:
385
一种由Robert Tarjan提出的求解有向图强连通分量的线性时间的算法。 Tarjan算法是基于对图深度优先搜索的算法,每个强连通分量为搜索树中的一棵子树。搜索时,把当前搜索树中未处理的节点加入一个堆栈,回溯时可以判断栈顶到栈中的节点是否为一个强连通分量。 定义dfn(u)为节点u搜索的次序编号 ...
分类:
编程语言 时间:
2016-09-25 10:46:16
阅读次数:
352
算法10 二叉搜索树 搜索树数据结构支持许多动态集合操作,包括search,minimum,maximum,predecessor,successor,insert和delete等。 概念:二叉搜索树。对于任何节点x,其左子树中的关键字最大不超过x.key,其右子树中的关键字最小不低于x.key。其 ...
分类:
编程语言 时间:
2016-09-22 21:09:16
阅读次数:
239
Abandoned country Time Limit: 8000/4000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 4477 Accepted Submission(s): 11 ...
分类:
其他好文 时间:
2016-08-21 10:53:50
阅读次数:
126
二叉查找树 _ 二叉排序树 _ 二叉搜索树_C++ 一、数据结构背景+代码变量介绍 二叉查找树,又名二叉排序树,亦名二叉搜索树 它满足以下定义: 1、任意节点的子树又是一颗二叉查找树,且左子树的每个节点均小于该节点,右子树的每个节点均大于该节点。 2、由1可推出,任意节点的左孩子小于该节点,右孩子大 ...
分类:
编程语言 时间:
2016-08-02 00:53:18
阅读次数:
270
Introduction to Monte Carlo Tree Search (蒙特卡罗搜索树简介) 部分翻译自“Monte Carlo Tree Search and Its Applications”。 MCTS 结合了传统 MC 随机采样的方法 和 树搜索的方法。MC 方法利用重复的随机采样 ...
分类:
其他好文 时间:
2016-07-15 23:37:55
阅读次数:
319
近邻法中计算距离需要遍历,带来很大的计算量和存储量,为了改善这两方面的性能,有人提出采用分枝界定算法(Branch-Bound Algorithm)来改进近邻法,主要分为两个阶段:1)利用人工划分或K-means聚类算法或其他动态聚类算法将样本集X划分成层级形式,形成一个树结构;2)利用树搜索算法找出与未知样本的k个近邻。
1.层级划分
1)将样本集X划分成l个子集,每个子集再分成l个子集,...
分类:
编程语言 时间:
2016-06-15 12:47:47
阅读次数:
423
排序算法可谓数据结构模块中的重中之重,常见的哈希表,二叉树,搜索树/平衡树,位图等数据结构只是处理实际问题的抽象方法,实际在处理接受或生成的数据集时,排序算法显得尤其重要,排序算法家族很庞大,其中包括了冒泡排序,选择排序,插入排序,堆排序,快速排序,归并排序,基数排序,计数排序,希尔排序,箱排序,树型排序等众多算法,每种排序都有各自的特性,没有好坏之分,只有在特定的场景使用合适的排序算法才是上策,单纯的来比显得太过绝对,没有可比性。因为实际需求及各方面条件的限制使得排序算法的可选范围往往只缩小到某一种或某几...
分类:
编程语言 时间:
2016-06-07 06:37:23
阅读次数:
291