算法
shimingliabc
这个作者很懒,什么都没留下…
展开
-
word break
LeetCode 139. Word Breakbool wordBreak(string s, unordered_set<string> &dict) { vector<int> dp(s.size() + 1); //dp[i + 1]为s(0~i)是否有路径 dp[0] = 1; for (int i = 1; i < s.size() + 1; i++)原创 2016-03-18 16:04:13 · 252 阅读 · 0 评论 -
拓扑排序
拓扑排序的原理及其实现 LeetCode 207. Course Schedule LeetCode discussKahn算法从有向图中选取一个没有前驱(即入度为0)的顶点,并输出之;从有向图中删去此顶点以及所有以它为尾的弧;如果最后还有顶点,则图中有环bool canFinish(int numCourses, vector<pair<int, int>>& prerequisite原创 2016-09-05 10:01:24 · 235 阅读 · 0 评论 -
线性规划求解路径问题
问题描述 给定一个带权重的有向图G=(V,E),V为顶点集,E为有向边集,每一条有向边均有一个权重。对于给定的顶点s、t,以及V的子集V’,寻找从s到t的不成环有向路径P,使得P经过V’中所有的顶点(对经过V’中节点的顺序不做要求)。整数规划求解思路记边的变量为ei e_i 对应权重为ci c_i , 点记为viv_i, 其出边记为vojivo_i^j, 其入边记为vijivi_i^j,原创 2016-05-31 21:22:39 · 5749 阅读 · 3 评论 -
push_heap
http://www.cplusplus.com/reference/algorithm/push_heap/push_heap// range heap example#include <iostream> // std::cout#include <algorithm> // std::make_heap, std::pop_heap, std::push_heap, std:原创 2016-05-04 21:51:17 · 339 阅读 · 0 评论 -
最短路径算法
Floyd算法Dijkstra算法原创 2016-03-10 09:52:56 · 254 阅读 · 0 评论 -
压缩感知(2)
算法框架利用矩阵Φ∈M×N\Phi \in M \times N对非稀疏信号ff进行采样 y=Φfy=\Phi f根据稀疏表示f=Ψxf=\Psi x利用稀疏表示矩阵Ψ∈N×N\Psi \in N \times N构造测量矩阵 T=ΦΨT=\Phi \Psi利用恢复算法进行恢复OMP算法输入:初始残差δ0\delta_0,恢复矩阵TT输出:关键值及所在位置原创 2016-02-25 15:56:26 · 300 阅读 · 0 评论 -
压缩感知(1)
信号的稀疏表示压缩传感完整的压缩传感表示约束等距性条件信号的稀疏表示信号ff在某组基Ψ\Psi下可以表示为 f=Ψxf=\Psi x 若xx中只有KK个元素非0,称xx为信号ff的KK稀疏表示。 KK为稀疏度。压缩传感考虑某稀疏信号z∈RNz\in R^N,已知测量矩阵Φ∈RM×N(M≪N)\Phi \in R^{M\times N}(M\ll N),及zz在改矩阵下的线性测量值y∈原创 2016-02-24 19:04:47 · 652 阅读 · 0 评论 -
图
图的表示邻接表拓扑排序简单拓扑排序 O(V^2)从入度为0的点出发,删除点及其边。同样方法处理图的其余部分。//O(v^2)void topsort(Graph G){ int counter; vertex v, w; for (counter = 0; counter < numvertex; counter++) { v = findnewve原创 2016-03-10 09:51:22 · 228 阅读 · 0 评论 -
KMP与next数组
http://www.cnblogs.com/c-cloud/p/3224788.html转载 2016-02-24 14:43:03 · 215 阅读 · 0 评论 -
二分图的最大匹配、完美匹配和匈牙利算法
转载自: Renfei Song’s Blog这篇文章讲无权二分图(unweighted bipartite graph)的最大匹配(maximum matching)和完美匹配(perfect matching),以及用于求解匹配的匈牙利算法(Hungarian Algorithm);不讲带权二分图的最佳匹配。二分图:简单来说,如果图中点可以被分为两组,并且使得所有边都跨越组的边界,则这就是一个二转载 2016-09-26 09:49:58 · 299 阅读 · 0 评论