
算法
文章平均质量分 94
syddf_shadow
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
带权并查集
带权并查集需要先理解一般的并查集,不明白的可自行先搜索有关内容一般的并查集主要记录节点之间的链接关系,而没有其他的具体的信息,仅仅代表某个节点与其父节点之间存在联系,它多用来判断图的连通性,如下图所示,这是一个并查集,其中箭头表示父子关系,可以看到这些边没有记录其他的任何信息。而有的时候在这些边中添加一些额外的信息可以更好的处理需要解决的问题,在每条边中记录额外的信息的并查集就是带权并...原创 2018-09-02 16:03:09 · 35190 阅读 · 32 评论 -
线性时间求解点集所有点最近邻的Felzenszwalb算法
最近在做字体渲染的相关内容,利用FreeType可以提取出ttf文件中具体某个字符的轮廓图,这个轮廓图是二值化的图像,后续的处理需要用到图像上的每个点到字体轮廓线的最近距离,即要求平面上的每个点与轮廓线的最近邻。可以考虑使用KD树,这里介绍一下Felzenszwalb算法,它可以在O(KN)的复杂度内完成所有点的最近邻求解,其中K是点集的维度,N是点的总个数。一维情形的求解首先介绍一维...原创 2018-09-10 22:43:50 · 2603 阅读 · 1 评论 -
TSP问题总结归纳
TSP问题即旅行商问题,经典的TSP可以描述为:一个商品推销员要去若干个城市推销商品,该推销员从一个城市出发,需要经过所有城市后,回到出发地。应如何选择行进路线,以使总的行程最短。从图论的角度来看,该问题实质是在一个带权完全无向图中,找一个权值最小的哈密尔顿回路。旅行商问题有很多种不同的问法,最近做了几个关于TSP的题,下面总结一下。由于大部分TSP问题都是NP-Hard的,因此很难得到什么高效...原创 2018-10-26 13:02:07 · 71413 阅读 · 5 评论 -
拉格朗日插值法与牛顿插值多项式
多项式插值先有一个函数f(x)f(x)f(x),如果给定在区间[a,b][a,b][a,b]上的n+1n+1n+1个点a&lt;=x0&lt;x1&lt;⋅⋅⋅&lt;xn&lt;=ba&lt;=x_0&lt;x_1&lt;···&lt;x_n&lt;=ba<=x0<x1<⋅⋅⋅<xn&原创 2018-12-28 18:57:37 · 11229 阅读 · 0 评论 -
快速傅里叶变换与快速数论变换
在拉格朗日插值法与牛顿插值多项式中有说明当给定n+1个点值序列(x0,y0),(x1,y1),⋅⋅⋅,(xn,yn)(x_0,y_0),(x_1,y_1),···,(x_n,y_n)(x0,y0),(x1,y1),⋅⋅⋅,(xn,yn),其中任意两个xxx都互不相同时,有且只有一个n次多项式函数包含这些点值,换句话说,一个n次多项式可以由n+1n+1n+1个点值来表示,如果我们需要获...原创 2018-12-28 22:26:08 · 570 阅读 · 0 评论 -
平方根倒数的一个快速近似计算算法
已知一个浮点数xxx,现在需要求1x\frac{1}{\sqrt{x}}x1,这是一个非线性方程组的求解问题,可以采用不动点迭代法、牛顿迭代法之类的方法来解决。但是早在上个世纪,在游戏《Quake III》中,开发者就采用了一种非常快速求解这个问题的算法,这个算法非常有意思,而且现在也被一些GPU在硬件上实现,下面来看一下它的思路。首先,设xxx按照IEEE浮点数表示规则对应的无符号整数为I...原创 2019-01-01 22:09:27 · 1738 阅读 · 0 评论 -
pbrt源码中用全主元消去法求矩阵逆的实现
《pbrt》一书配套源码上对于矩阵求逆使用的是全主元消去法,但是它的实现与我所见到过的全主元消去法还是略有不同的,有的地方还是值得思考一下的。学过线性代数的应该都知道求矩阵的逆有伴随矩阵法和初等变换法等方法,而高斯消元法、列主元消去法、全主元消去法这些算法都基于初等变换法,简单说一下,对于矩阵AAA,我们想要求一个矩阵BBB,使得AB=IAB=IAB=I,那么可以先对AAA做一系列的初等行(列)...原创 2019-02-06 01:10:47 · 584 阅读 · 0 评论