算法学习
文章平均质量分 89
adam1173529071
这个作者很懒,什么都没留下…
展开
-
一些题解的思考集合。
一些题解的个人思考集合。原创 2020-08-25 18:23:23 · 180 阅读 · 0 评论 -
字符串匹配KMP算法学习笔记
KMP算法学习笔记原创 2020-08-21 21:15:01 · 225 阅读 · 0 评论 -
教练,我想学二叉树遍历!
二叉树的前序、中序、后序三种遍历方式迭代代码实现原创 2020-04-08 19:58:20 · 174 阅读 · 1 评论 -
从bt到dp的困惑
如何从bt过渡到dp呢?原创 2020-04-08 11:04:04 · 612 阅读 · 0 评论 -
一文解答你关于“轨道问题”的所有疑问!(有环链表问题)
问题描述:给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回NULL。我看过很多博客,对于最优解法的解释无非两个字,神奇,并没有说明如何构思出这样的思路。这篇文章是我看过《Elements of programming》相关分析后,结合题目总结出的解题思路,教给你如何构思快慢指针的思路,认真看完一定会有收获的。原创 2020-03-19 11:34:39 · 1605 阅读 · 7 评论 -
手把手教你写出正确的二分搜索!
写出正确的二分搜索知易行难,原理好像都懂,但是实际上手就出各种错误,例如如何确定循环终止条件、区间搜小判断条件等。这里就手把手教你写出正确的二分检索!原创 2020-02-22 15:37:06 · 438 阅读 · 2 评论 -
《Towards Efficient SpMV on Sunway Many-core Architectures 》读后笔记
记待解问题为y = Ax,采用了CSR格式存储矩阵。核心思路:多级数据并行。具体分为两方面,待计算数据的划分和计算核的划分。下面分3部分进行说明1)对稀疏矩阵进行三级数据划分,如右图所示。设矩阵规模为M×N,则第一级数据划分是把矩阵纵向从上到下分割成规模为θ×N的块,共有M/θ个(原文此图最后一个块的下标错误)。第二级数据划分是把一个block横向从左到右划分为规模为θ×δ的Tile,共有...原创 2019-04-24 18:46:19 · 376 阅读 · 0 评论 -
《Bandwidth Reduced Parallel SpMV on the SW26010 Many-Core Platform》读后笔记
核心思路:1)通过轻工作量的预处理阶段,把矩阵A纵向从上到下分割成一个个的row-slice,划分后每个row-slice中的非零元个数大致相同。每个row-slice由一个CPE单独计算。2)计算一个row-slice时,读取相应的x时使用动态前向规划技术避免取到无用的x,降低了带宽。3)对CPE进行划分,同组CPE可以共享所需要的x,可进一步降低带宽。4)设计了parameter ...原创 2019-04-24 18:51:03 · 437 阅读 · 0 评论 -
《A synchronization-free algorithm for parallel sparse triangular solves》读后总结
正式读研之后看的第一篇文献。本着“只有记录下来的才是自己的”这一原则,记录一下。论文提出的方法用来解决多元一次方程组中系数矩阵为下三角的情况(Lx = b中,L为下三角矩阵)如上图所示,对应的方程组如下“a(0,0)x0 = b0a(1,1)x1 = b1a(2,1)x1 + a(2,2)x2 = b2...a(4,1)x1+a(4,2)x2+a(4,3)x3+a(...原创 2018-11-08 22:32:05 · 456 阅读 · 0 评论 -
《Turbo iso: towards ultrafast and robust subgraph isomorphism search in large graph databases》读后笔记
这篇论文提出了用来解决子图同构问题的turboISO算法,这是我的读后笔记原创 2018-04-19 19:23:02 · 965 阅读 · 0 评论 -
《A (Sub)Graph Isomorphism Algorithm for Matching Large Graphs》论文总结
解决子图同构的VF2算法论文的理解原创 2017-11-19 10:36:57 · 1892 阅读 · 1 评论 -
《An Algorithm for Subgraph Isomorphism》论文总结
人生第一次看论文,用时4天,这里记录一下论文大体内容和自己的理解与对算法的修改。论文链接http://theory.stanford.edu/~virgi/cs267/lecture1.pdf子图同构的概念请自行了解,可以百度可以看wiki。通俗的讲两个图同构的意思就是对其中一张图的结点重新编号以后,两张图长的一样。也可以说是一种对应关系,只要点与点的对应关系合适,那么两张图的邻接矩阵一样原创 2017-11-08 15:43:14 · 1766 阅读 · 3 评论 -
迭代求子图同构
根据http://theory.stanford.edu/~virgi/cs267/lecture1.pdf论文第二部分的伪代码实现出来的C++实现代码,有改动,原文第5步没有还原。#include#include#includeusing namespace std;#define MATRIX vector>#define DEBUGvector getDegree(MAT翻译 2017-11-08 16:23:50 · 411 阅读 · 0 评论 -
DFS求子图同构
#include#includeusing namespace std;#define MATRIX vector>vector getDegree(MATRIX m){ int p = m.size(); vector degree(p, 0); for (int i = 0; i < p; i++){ for (int j = 0; j < p; j++){ deg原创 2017-11-08 16:20:53 · 534 阅读 · 2 评论