2Know的博客

逻辑可以让你从a走到z,想象力可以让你到达任何地方

KMP算法与朴素模式匹配算法(C语言)

在上一篇博客中介绍了KMP算法和朴素模式匹配算法的区别,本文主要针对这两种算法的C语言实现进行讲解。

2016-10-29 21:57:39

阅读数:1938

评论数:0

KMP算法

这个算法研究了一天,从理论推导到C语言实现,作为初学者,还是不太容易,尤其很多资料对于next矩阵有的从0开始有的从1开始。作为初学者尤其是在具体实现是可能会搞混,但其实其本质是一样,首先需要理解算法的本质,然后再考虑形式上差异就会比较容易。 首先简单介绍朴素的模式匹配算法,然后详细介绍KMP算...

2016-10-29 20:36:11

阅读数:2572

评论数:4

栈实现表达式求值(C语言)

刚刚学习C语言的时候很多人就写过计算器,但是当时写的计算器只能进行一步四则运算;对于一次输入(1+2)*3+4这样的运算则没有办法计算。 本篇博文利用栈这种数据结构实现了支持带括号的表达式求值计算器;栈有栈底和栈顶指针,元素是先进后出;对于栈的操作最主要的是创建、压栈、弹栈;在实现计算器时,我们...

2016-10-28 11:32:41

阅读数:4433

评论数:0

双向循环链表相关操作

本实验主要完成双向循环链表的 创建 添加数据 查找数据 删除数据 遍历 实验过程中遇到的问题: 1、malloc空间申请 2、malloc空间释放

2016-10-25 14:08:27

阅读数:966

评论数:0

C语言中单向链表的相关操作

本文主要实现了链表的整表创建和清理; 链表数据的增删改查; 程序中链表整体创建提供了头部插入和尾部插入两种方式; 数据添加也提供了头部插入和尾部插入两种方式; 实际应用中数据一般会采用,先创建链表头指针,然后利用数据添加函数加入数据。

2016-10-19 21:38:29

阅读数:764

评论数:0

OpenCL做并行滤波

本实验主要进行OpenCL一维信号的滤波;主要思路是以离散信号的序列点作为目标,一个工作项负责一个信号点的计算;这样做的好处是方便,相对于串行实现获得相当大的性能提升;但是每个工作项负载不均衡。

2016-10-15 11:25:31

阅读数:666

评论数:0

OpenCL矩阵乘法的例子

前两篇博客中介绍过矩阵转置的两种方法,矩阵乘法可以先对矩阵做转置运算,然后再对应相乘; 矩阵大小是65*8192 先对8192*65的矩阵转置为65*8192; 然后由65个工作项,每个工作项负责一行数据的乘法; 完成65行数据的乘法; 转置是由8192个工作项完成的; 代码中给出了C...

2016-10-13 09:46:56

阅读数:1389

评论数:0

OpenCL矩阵转置(二)

所谓矩阵,在内存中也是一串数字;所以转置就是将数据的存储相对位置进行调换。上一篇博客介绍了按照转置定义方法进行转置的技巧;但是那种方法仅限于方阵,对于一般矩阵转置相对比较困难(可以将一般矩阵分块);所以今天介绍一般矩阵转置方法;

2016-10-10 21:05:58

阅读数:481

评论数:0

OpenCL中kernel的循环调用

kernel的循环调用主要是涉及缓冲区的创建和主机端命令同步

2016-10-09 10:47:37

阅读数:2576

评论数:4

OpenCL笔记之主机端同步

关于主机端同步,我一共进行了四个实验;主要是对四中方法的实验;

2016-10-08 22:19:53

阅读数:1099

评论数:1

C语言产生随机数

C语言中可以利用rand()函数产生伪随机数,也可以使用srand()配合rand()一起使用获得真随机数。

2016-10-06 09:45:07

阅读数:345

评论数:0

OpenCL实现矩阵转置

本例子主要参考OpenCL实战书中提到的方法。 矩阵转置就是行列互换,但是作为并行计算的转置,首先考虑分块,由不同的工作项同时对不同的矩阵块进行行列互换,以此来提高矩阵转置的效率。具体操作如下: 这是一个8*8的矩阵,将其分为2*2的矩阵块。一共有16个矩阵块,分为对角线上的矩阵块和非对角线...

2016-10-04 14:57:25

阅读数:606

评论数:0

C语言实现序列卷积

在上一篇博客中讲解了卷积和滤波的区别,本文主要介绍利用C如何实现序列卷积。 http://blog.csdn.net/u011028771/article/details/52733677 采用上文中的第一种方法实现

2016-10-04 13:58:08

阅读数:4555

评论数:2

OpenCL实现序列卷积

在上一篇博客中讲解了卷积和滤波的区别,本文主要介绍利用OpenCL如何在GPU上实现序列卷积。采用上文中的第一种方法实现:

2016-10-04 13:51:02

阅读数:483

评论数:0

Matlab中fileter和conv的区别及卷积的计算方法

本文主要讲解了filter和conv的区别;以及卷积的两种求法

2016-10-04 13:44:36

阅读数:1961

评论数:0

C语言字符串拼接

在实验中需要生成大量的文件名,文件名是字母加编号的形式,因此需要用到字符串拼接。 文件名:string 编号:1,2,3,4…… 后缀:.bin

2016-10-03 13:31:38

阅读数:6767

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭