1957

无聊蛋疼的1957写的低端博客
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2012年10月23日

摘要: 先补下virtual是啥虚函数是指一个类中你希望重载的成员函数,当你用一个基类指针或引用指向一个继承类对象的时候,你调用一个虚函数,实际调用的是继承类的版本。先贴个代码,再解释#include <iostream>using namespace std;class Base{public: Base(){cout<<"Base Construct"<<endl;}; ~Base(){cout<<"Base destroy"<<endl;} };class A : public Base{publ 阅读全文

posted @ 2012-10-23 09:41 1957 阅读(5021) 评论(2) 推荐(0) 编辑

2012年10月9日

摘要: 在微博上看到了skiplist,于是就想自己实现下下。关于skiplist的时间复杂度的证明还没看懂,有兴趣的可以去看看Skip Lists:A ProbabilisticAlternative toBalanced Trees 这篇论文。ok,这里就只说实现了。其实论文里面的伪代码很清楚了,照着写就行了。skiplist就不多说了http://en.wikipedia.org/wiki/Skiplist还是使用我们喜闻乐见的c语言实现吧首先要的就是定义每个节点的数据类型啦。typedef struct snode{ int key; int level; int value; str... 阅读全文

posted @ 2012-10-09 16:11 1957 阅读(672) 评论(0) 推荐(0) 编辑

2012年9月27日

摘要: Set很常见的数据类型,一般情况下可以用平衡二叉树,或者hash实现的。习惯了这种思维,所以一开始用函数式方法去实现的时候显得很没头绪。-------------------------------------------------只是用于练习函数式编程,和效率无关,这种实现效率不高。-------------------------------------------------在函数式编程里面一切皆函数,所以我们的集合元素也可以看做是函数在构建单个集合时(就是集合的元素)输入elem,返回x == elem的函数(define (singletonSet elem) (lambda (. 阅读全文

posted @ 2012-09-27 10:50 1957 阅读(235) 评论(0) 推荐(0) 编辑

2012年9月21日

摘要: 今天又继续多年没看的haskell了想起之前看书时候提到的foldr可以用于无穷序列,而foldl不行。一般情况下foldl效率比foldr高。之前一直没怎么理解。myfoldl f z [] = zmyfoldl f z (x:xs) = myfoldl f (f z x) xsmyfoldr f z [] = zmyfoldr f z (x:xs) = f x (myfoldr f z xs)自己实现了一下,明显就可以看出myfoldl是一个尾递归,所以效率高myfoldr在某些运算,比如and 运算,在x为false就可以结束了。所以在某种情况下myfoldr可以用于无穷序列 阅读全文

posted @ 2012-09-21 18:54 1957 阅读(1943) 评论(0) 推荐(0) 编辑

2012年9月15日

摘要: 周末早上一大早来实验室本来说准备看论文的,结果似乎是感冒了,完全没精神看。=================分割线1===========================CUDA之前不知在哪儿看了什么(已经不记得了),一直想搞搞,只是自己电脑一直木有Nvidia的显卡。实验室来用的电脑室HP的workstation正好有个gtx 285,所以就试试啦。=================分割线2===========================吐槽下,昨天用vs2010编译opencv with cuda用了3个小时。===================正文================ 阅读全文

posted @ 2012-09-15 11:16 1957 阅读(4264) 评论(0) 推荐(0) 编辑

2012年9月5日

摘要: 逻辑表达式let true = \a.\b.alet false = \a.\b.blet not = \x.x false truelet and = \x.\y. x y falselet or = \x.\y. x true ylet xor = \x.\y.x (not y) y 阅读全文

posted @ 2012-09-05 09:29 1957 阅读(168) 评论(0) 推荐(0) 编辑

2012年8月29日

摘要: 一直用的DrRacket来写scheme,只是练练手而已,今天看到原来还有guile这个东西。于是下载,安装。老套路./configuremakemake install结果编译出错,好像是read-line 32位64位的问题google了一下也没解决。然后想起了brew于是brew install guile结果就装上了-,-!不过版本不是最新的,不爽啊。打开/usr/local/Library/Formula/可以看到guile.rbrequire 'formula'class Guile < Formula homepage 'http://www.gnu 阅读全文

posted @ 2012-08-29 15:51 1957 阅读(765) 评论(0) 推荐(0) 编辑

摘要: 原文链接:http://www.chenjunlu.com/2011/03/understanding-pkg-config-tool/你在 Unix 或 Linux 下开发过软件吗?写完一个程序,编译运行完全正常,在你本机上工作得好好的,你放到源代码管理系统中。然后,告诉你的同事说,你可以取下来用了。这时,你长长的出了一口气,几天的工作没有白费,多么清新的空气啊,你开始飘飘然了。“Hi,怎么编译不过去?”你还沉浸在那种美妙的感觉之中,双臂充满着力量,似乎没有什么问题能难倒你的。正在此时,那个笨蛋已经冲着你嚷开了。“不会吧,我这边好好的!”表面上你说得很客气,其实,你心里已经骂开了,真笨,不知 阅读全文

posted @ 2012-08-29 10:34 1957 阅读(172) 评论(0) 推荐(0) 编辑

2012年8月28日

摘要: 上一次看SICP没有做习题,这次就慢慢看,慢慢做题了。效率比较低,很少抽空看看,这两个题不是一眼就看出结果的,所以写下。1.6就是cond和if有着同样的效果,为啥用cond实现的new-if不能用于一些函数。答:因为new-if定义为函数,scheme的参数是使用的应用序规则,要先求出参数的值,所以再调用new-if的时候predicate the-clause else-clause都要求值,导致递归不能结束,然后stackoverflow。1.16用迭代的方法实现fast-exp球bn我们设置一个变量a,让abn的值保持不变,初始a=1,那么在最后n=0的时候a的值就是bn1)若n是偶数 阅读全文

posted @ 2012-08-28 14:37 1957 阅读(763) 评论(0) 推荐(0) 编辑

2012年8月27日

摘要: 周末看了看伞哥博客,发现了篇文章在 Mac OS X 10.6 下编译安装高性能 OpenCV 库原来一直用的opencv都不知道又这个T_T 阅读全文

posted @ 2012-08-27 10:00 1957 阅读(220) 评论(0) 推荐(0) 编辑