![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
二三
本人毕业于南京理工大学光电信息工程专业,现于中国科学院上海应用物理研究所读硕二,有兴趣找一份图像算法相关的实习
展开
-
反转单向链表
通过递归法反转一个单向链表,turnBack()为递归函数,head为最终保存的反向链表的头结点指针。原创 2014-09-25 16:21:50 · 639 阅读 · 0 评论 -
C++:lambda表达式
在编程的过程中,一般通过函数指针或者函数对象(仿函数)来计算或者解决问题,如排序sort和移除操作remove_if的参数中都有相应的谓词函数。函数指针虽然语法开销小,但是不能在作用域内保持状态(can not retain state within a scope)。函数对象(仿函数)能够retain the state within a scope,但是有大的语法开销。 lambda原创 2014-10-23 10:19:40 · 662 阅读 · 0 评论 -
matlab与C语言混合编程之openmp多线程
作为非MATLAB控,却选择MATLAB进行项目的研究,主要还是因为MATLAB使用起来实在太方便了。因此,它的缺陷也很明显,效率不高。内部定义的任何函数,如果我们使用C语言重写,效率一般都能得到一定的提升。 而对于复杂度更高的算法,则需要进一步使用并行编程的方法,比如多线程。那么,在我们使用MATLAB进行项目的主体框架设计后,如何调用使用C语言编写的代码呢?首先,C语言程序肯定需原创 2014-09-29 12:57:04 · 4335 阅读 · 0 评论 -
openmp之互斥锁
openmp并行程序设计时,经常会发生线程之间的竞争,即可能同时访问同一共享变量。当然如果共享变量在线程并发期间不改变值的话,同时读取共享变量不会产生任何问题,除非同时写该变量,则无法确定该线程间该变量的写顺序。 openmp中有一些同步机制可以避免线程竞争问题的发生。可以使用同步机制,使得线程只有执行到某个语句,才能继续执行后面的程序。在程序需要访问可能产生竞争的内存数据的时候,都需要原创 2014-11-06 08:28:39 · 1689 阅读 · 0 评论 -
leetcode1 : twosum
Given an array of integers, find two numbers such that they add up to a specific target number.The function twoSum should return indices of the two numbers such that they add up to the target, whe原创 2015-03-08 13:48:26 · 523 阅读 · 0 评论 -
基数排序
对于基数排序不理解的可以看这篇文章:点击打开链接还有这篇关于计数排序、桶排序、基数排序的比较:点击打开链接基数排序与桶排序的不同:(1)桶排序是将数据映射成不同的桶,每个桶代表所有数据的一个子区间,然后在每个桶内使用O(nlogn)的排序方法,从从而减少元素之间的比较次数。当每个桶内只有一个元素时,完全消除元素之间的比较,从而时间复杂度能够达到O(n)。显然,这是用空间换时间的原创 2015-04-03 14:48:10 · 580 阅读 · 0 评论 -
opencv:边缘检测之kirsch算子
采用八个模板来处理图像的检测图像的边缘,运算量比较大。8个3x3模板如下:通过矩阵变换发现经过kirsch算子得到的像素值直接的关系,事实上需要直接由邻域像素点计算得到的只有p0,,因此可以大大减少计算量。//kirsch算子滤波void kirsch(const IplImage* src, CvMat* dst){原创 2015-04-04 16:59:49 · 7822 阅读 · 2 评论