1.RMQ问题
RMQ (Range Minimum/Maximum Query):对于长度为n的数组A,回答若干询问RMQ(A,i,j)(i,jRMQ问题是指求区间最值的问题。最简单的方法,就是遍历数组直接搜索,但是这种方式时间复杂度是O(n)。对于数组长度较大,性能要求高的场景不适用。
2.ST(Sparse Table)算法
ST算法是一种更加高效的算法,以O(nlog...
分类:
其他好文 时间:
2014-05-25 22:28:29
阅读次数:
375
出题:求二叉树中距离最远的两个节点之间的距离,此处的距离定义为节点之间相隔的边数;分析:最远距离maxDis可能并不经过树的root节点,而树中的每一个节点都可能成为最远距离经过的子树的根节点;所以计算出以每个节点为根节点的子树的最
远距离,最后取他们的最大值就是整棵树的最远距离;如果递归层次过多造...
分类:
其他好文 时间:
2014-05-25 22:23:43
阅读次数:
275
出题:要求层序遍历二叉树,从上到下的层次,每一层访问顺序为从左到右,并将节点一次编号,输出如下;如果只要求打印指定的level的节点,应该如何实现。 a b c
d e f g h i分析:原始的层序遍历类似于BFS,打印当前访问的节点curNode的序列号,并将其直接子节点放入队列queu...
分类:
其他好文 时间:
2014-05-25 22:22:45
阅读次数:
321
出题:给定一个数字序列,其中每个数字最多出现两次,只有一个数字仅出现了一次,如何快速找出其中仅出现了一次的数字;分析:由于知道一个数字异或操作它本身(X^X=0)都为0,而任何数字异或操作0都为它本身,所以当所有的数字序列都异或操作之后,所有出现两次的数字异或操作之后的结果都为0,则最后剩下的结果就...
分类:
其他好文 时间:
2014-05-25 22:21:55
阅读次数:
411
开始学习算法导论,看书+笔记+做课后题目+做OJ计划是每天一个小时看书+写笔记挑些课后题目来做,然后一道OJ————————————————————————————————————————今天看随机算法与概率分布,又复习了一下概率论
- -讲到了两个随机算法:其中一个是随机分布优先度,然后按照优先度...
分类:
其他好文 时间:
2014-05-25 22:20:37
阅读次数:
251
出题:求数组中最长递增子序列的长度(递增子序列的元素可以不相连);分析:解法1:应用DP之前需要确定当前问题是否具有无后效性,也就是每个状态都是对之前状态的一个总结,之后的状态仅会受到前一个状态的影响;对于递增子序列
而言,可以首先确定前面k个元素的最长子序列,然后计算增加一个元素之后的最长子序列。...
分类:
其他好文 时间:
2014-05-25 22:20:16
阅读次数:
339
初级:基本算法:枚举:1753 2965贪心:1328 2109
2586构造:3295模拟:1068 2632 1573 2993 2996图:最短路径:1860 3259 1062 2253 1125
2240最小生成树:1789 2485 1258 3026拓扑排序:1094二分图的最大匹配:...
分类:
其他好文 时间:
2014-05-25 22:16:08
阅读次数:
341
敏感词、文字过滤是一个网站必不可少的功能,如何设计一个好的、高效的过滤算法是非常有必要的。前段时间我一个朋友(马上毕业,接触编程不久)要我帮他看一个文字过滤的东西,它说检索效率非常慢。我把它程序拿过来一看,整个过程如下:读取敏感词库、如果HashSet集合中,获取页面上传文字,然后进行匹配。我就想这...
分类:
编程语言 时间:
2014-05-25 22:06:08
阅读次数:
496
一、PCA:PCA是一种用来对图像特征降维的方法,PCA通过将多个变量通过线性变换以选出较少的重要变量。它往往可以有效地从过于“丰富”的数据信息中获取最重要的元素和结构,去除数据的噪音和冗余,将原来复杂的数据降维,揭示隐藏在复杂数据背后的简单结构。近年来,PCA方法被广泛地运用于计算机领域,如数据降...
分类:
其他好文 时间:
2014-05-25 20:43:34
阅读次数:
288
多项式的加减乘除能够利用多项式的加减乘除进行运算,所以下面程序採用了多项式的加减乘除。多项式运算已经在《算法导论》第30章有简要的介绍,详细的请參考数学书。大整数加法:(利用书上公式轻松得出)//多项式加法-大数加法#include
#include using namespace std;#def...
分类:
其他好文 时间:
2014-05-25 20:41:33
阅读次数:
202