复杂网络研究开始

摘要: 我想,我还是一个喜欢做研究的人,做应用研究的人。何谓应用研究呢?这是我自己随便叫的,主要是要贴近实际应用,产出要能够直接应用到实际的问题中。不要玩儿虚的。真正有用,就是我研究的唯一目标。原先觉得自己适合做一个架构师,现在这样的想法儿也没有变。因为,我也很喜欢对一个项目的掌控随心所欲的感觉,我能够掌控一个项目,项目的每个细节,每个细节的程度。当然,我目前参与的项目,最大的就是人民搜索的项目。可能也其... 阅读全文
posted @ 2012-01-26 11:17 见路非道 阅读(208) 评论(0) 推荐(0)

杭电Acm-母函数题目解题报告

摘要: 今天是腊月29,今年没有30。所以,今晚就是除夕夜了。由于要找工作,练内功,所以,过年也不能够放松。今天做的题目是母函数相关的母函数就Generation Function,也叫生成函数,是组合数学中的一个概念。我请教了@微博Koth 他说了一个很典型,很简答的例子,可以很好的理解母函数的概念。例如求:x+2y=10的非负整数解的个数------①我们直观的看(x,y)的取值有:(0,5),(2,... 阅读全文
posted @ 2012-01-22 12:00 见路非道 阅读(966) 评论(0) 推荐(0)

由随机游走模型说起

摘要: 随机游走模型可以预测不同节点之间的潜在关系,如下面图的例子:在上图中,q表示为查询,d表示为文档,如果有直线相连,就表示相关,q1和d1,d2相连,则d1和d2都是q1的相关文档,但是d3没有和q1相连(实线),那么他们之间就没有关系了么?不是的,通过与q2相关的文档发现,d3和q1是有关系的,原因是d1,d2和d3与q2都相关,那么他们之间是有关系的。这个查询和文档组成的网络中,相关的关系,是可... 阅读全文
posted @ 2012-01-17 14:39 见路非道 阅读(3362) 评论(0) 推荐(0)

杭电Acm-1046解题心得

摘要: 这道题目,我刚看的时候,就觉得是DFS,结果用DFS解决的时候,总是TLE。后来百度了一下,才发现,被出题者给忽悠了。这道题目其实并不是DFS,而且寻找简单的规律。规律非常简单,我在思考的过程中,也有想过,只是不敢相信,会如此简单。规律如下: 对于m和n至少有一个是偶数的情况,结果就为m*n 对于m和n都为奇数的情况,结果为:m*n + 0.41(0.41 = sqrt(1 + 1) - 1)这... 阅读全文
posted @ 2012-01-12 23:09 见路非道 阅读(398) 评论(0) 推荐(0)

杭电Acm-1045解题心得

摘要: 这个题目比较好理解。在一个n*n的格子中,放尽可能多的碉堡。这个题目开始想的时候,如果就思考深度搜索或者宽度搜索,会得到错误的答案,因为,当两个碉堡之间有墙的时候,它们是可以在同一行,同一列出现的。也就是说,在遍历的过程中,一行一列是否可以放碉堡的状态是可变的。代码如下:import java.util.Scanner;public class P1045 { private static int... 阅读全文
posted @ 2012-01-12 21:25 见路非道 阅读(273) 评论(0) 推荐(0)

杭电Acm-1010,1016,1240解题心得

摘要: 1010,1016都可以采用深度优先递归的方法解,比较简单。1240题目看起来很长,不好理解。理解了就是三维空间的搜索。理解了这个,基本就没有问题了。还有一个需要注意的是这道题目应该采用宽度优先的搜索算法,因为, 题目中要取得最短的路径,这个是深度优先搜索的不能够很方便实现的。能够快速的找到最优解,也是深度优先和宽度优先的一个区别,所以,在时间复杂度上,宽度优先搜索方法,要有优势,但是在空间上,则... 阅读全文
posted @ 2012-01-04 18:11 见路非道 阅读(370) 评论(0) 推荐(0)

杭电Acm-1239解题心得

摘要: 这道题目和1238同样基本搜索的思路。题目的大意是给定m,a,b三个数,要找到p,q两个质数,满足一下条件: p*q <= m a/b<= p/q <= 1并且要求找着这样的p和q的乘积最接近m的。数值范围规定如下: 4 < m <= 100000 1 <= a <= b <= 1000这类题目的基本思路 缩小搜索范围 确定搜索的顺序 注意剪枝具体做法:第一步就是要缩小素数的范围,第一感觉是可以在... 阅读全文
posted @ 2011-12-31 14:24 见路非道 阅读(246) 评论(0) 推荐(0)

杭电Acm-1238解题心得

摘要: 这是一道搜索入门级的题目。题目大意是:有几个字符串,找到一个最长的子串,这个字串满足条件:子串或者子串的逆序是任意一个字符串的子串,两个只要满足一个就行。考察点有字符串排序、求子串、求字符串的逆序等。我用java实现的,要比C++简单一些。代码如下:import java.util.Scanner;public class P1238 { public static int find(String... 阅读全文
posted @ 2011-12-29 23:57 见路非道 阅读(378) 评论(0) 推荐(0)

在eclipse中查看,修改cassandra的源码

摘要: cassandra的优化工作,进入代码实现的阶段了。用eclipse导入cassandra的源码很方便,cassandra源码中的build.xml已经包含了所有需要的构建项,按照如下步骤进行即可:svn checkout https://svn.apache.org/repos/asf/cassandra/trunk cassandra进入Cassandra目录执行antavro-generate执行antgen-thrift-java执行ant generate-eclipse-filesok!然后打开eclipse import即可。 阅读全文
posted @ 2011-12-29 14:44 见路非道 阅读(333) 评论(0) 推荐(0)

后缀数组构建–倍增算法java实现

摘要: 当把倍增算法的流程图画出来之后,就可以理解算法的流程。按照这个流程实现,我开始采用treemap来进行排序,10^5的长度的字符串,耗时10秒左右。今天按照某Acmer的代码,实现了java版的。性能提升接近100倍。Acmer写的代码,一般效率很高,但是可读行非常差,阅读代码的人经常绕在里面出不来了。下面,我详细分析一下java版的实现,希望自己加深理解,也能够帮助同学,欢迎指教。代码解释:整体... 阅读全文
posted @ 2011-12-27 20:08 见路非道 阅读(1206) 评论(0) 推荐(0)