上一页 1 ··· 3 4 5 6 7 8 下一页
摘要: 果然又是一个悲剧的面试,不是上次笔试的悲剧,这次又以面试的悲剧结束。设计的主要问题是毕业设计的搜索引擎的设计,设计到问题为什么爬去和索引效率为什么会这么低?这个问题还真是不太清楚,因为这个问题本来就是利用Nutch的框架,我们当中只是实现了其中的一些插件,然而我们插件会输出一些东西。我感觉最耽误时间的就是那个贝叶斯分类器了,但是当问到贝叶斯分类器的时候,就彻底的完了,当时没有意识到我实际上说的是一个KNN分类器。 描述一下分类器的具体实现,我当时描述的是将文本和训练样本都进行分词,然后计算每个文本和样本的余弦夹角,然后选择距离最近的那一个类别作为我们标记的类别。有没有什么问题?当时没感觉... 阅读全文
posted @ 2013-03-14 10:49 weixliu 阅读(2891) 评论(5) 推荐(1) 编辑
摘要: 为什么会这么说呢?因为这几天碰到一个算法,叫MCMC,这是一个相当复杂的东西,本以为我能够理解它,但是看了一天却发现自己不会的数学名词太多了,最终就败下阵来,投降了。因为最近被组合数学也搞的焦头烂额了,高中的时候关于排列组合就不是很敏感,感觉这更像是智力题,像我这种笨脑瓜只有靠努力的记忆题目类型了。 组合数学的最主要内容是对离散对象的技术,首先是经常用到的两个基本准则,加法法则和乘法法则。这个还是挺好理解的。 一一对应这点很重要,比如某种计数比较困难,可以考虑将问题转换为一个与其一一对应的问题,然后进行计数。 排列组合的模型。关于排列组合的问题除了一一对应是个难点之外,还有解题中分类... 阅读全文
posted @ 2013-03-08 17:54 weixliu 阅读(746) 评论(0) 推荐(0) 编辑
摘要: 网上看到了搜狗垂搜的实习招聘,网页抓取和网页处理方向,我挺喜欢这个方向的,同时本科接触过一点点这方面的知识,所以就投了简历,过了很久没有消息,然后突然有一天邮件通知我2月28号上午10点清华同方科技广场D栋19层笔试,那天我兴冲冲的跑到了清华科技园的D栋19层,开始拨打留下的那个电话,为什么我打... 阅读全文
posted @ 2013-02-28 13:45 weixliu 阅读(828) 评论(3) 推荐(0) 编辑
摘要: 最近一直在忙着写大作业,考试复习,复习算法的时候写了一些随笔,现在忙起来都落下了博客,这里有一个VC++写的大作业,主要是正则表达式转NFA并显示。内容如下。数据结构描述介绍一下NFA在表示的结构设计,由于NFA本身是一种有向图,所以这里的存储结构设计和邻接表相似,图中的每个节点后面是一些与其连接的节点的值,具体设计如图4.1。图4.1a) Graph由若干个GraphLine组成,其中start和end标识了NFA的初始状态和终止状态的下标;b) GraphLine的由一个节点和以该节点为起点所指向的节点组成,而所指向的节点利用EdgeLink表示,其中有指向边上的转移字符和指向的节点组.. 阅读全文
posted @ 2013-01-06 16:43 weixliu 阅读(21242) 评论(3) 推荐(1) 编辑
摘要: 堆在实现优先队列中经常用到,这里介绍3种堆的设计原理以及时间复杂度分析:具体的实现及原理待续, 阅读全文
posted @ 2012-12-29 23:20 weixliu 阅读(997) 评论(0) 推荐(0) 编辑
摘要: 贪心算法应该算是动态规划中的一种特例~如果一个事例满足贪心选择性质和最优子结构性质,则可以利用贪心算法,每一步可以做出局部最优的选择,因为具有贪心选择性质,又因为具有最优子结构,所以每次的局部最优选择能够达到全局的最优,所以最优就是一个全局的最优解~ 接下来贴一下课件的说明,考试结束了,心情很放松,有空补充一些具体问题的实现代码。 接下来通过一个活动选择问题的描述体会一下贪心算法与动态规划之间的关系。问题描述动态规划解决方案:跟据上面的递归式,可知至少是一个O(n2)的算法,因为内层的k的循环为1至n,外层循环为1至n,所以猜测下届至少是这个复杂度。贪心解决方案:理论基础: 阅读全文
posted @ 2012-12-29 23:17 weixliu 阅读(488) 评论(0) 推荐(0) 编辑
摘要: 由于要考试了,这里只是简单的罗列一下,考试完毕之后继续完善~单元最短路径单元最短路径有很多变体问题,比如单元目的最短路径,最短路径也有很多性质~,这些性质是算法正确性的基础,这些考试之后来完善,关于每个算法都要用到的松弛操作如下RELAX(u,v,w) if d[v] > d[u]+w(u,v) d[v]= d[u]+w(u,v) father[v]=u关于每个算法的初始化操作也写在前面INITIALIZE-SINGLE-SOURCE(G,s) for each vertex v in G d[v]= MAX fath... 阅读全文
posted @ 2012-12-28 11:20 weixliu 阅读(5336) 评论(0) 推荐(0) 编辑
摘要: 这篇只是作为学习笔记之用,记录复习中的一些知识,算法设计也均是伪代码表示,如果你想要找代码实现就不必看这些内容了,不过如果想要简单回顾一下相关知识还是可以浏览一下的。如果时间不仓促每个算法实现一下还是挺好的,不过这都是考试结束之后的事情了~图的分类 图分为有向图和无向图,两种都可以表示为G={V,E},分别是顶点和边,有向无向均是针对边来说的。 下面的lgE=lgV是同一个数量级的这个在最小生成树算法的算法复杂度分析中比较重要,所以这里罗列出来。 图的两种表示方法图的表示方法有两种,邻接链表和邻接矩阵: 邻接链表有一个握手定理,就是遍历邻接表中所有点的邻接点,在无向图中需要2E次,有向图中需. 阅读全文
posted @ 2012-12-27 10:59 weixliu 阅读(10074) 评论(0) 推荐(0) 编辑
摘要: 前面介绍了一个比较常用的算法设计技术,分治法,当碰到一个实际的问题时,看能够利用分治法解决,分治法适应于解决子问题独立且不重叠的,但是如果子问题出现重叠就不利用分治法了。这里介绍另外一种算法设计方法,动态规划,这种算法设计方法虽然基本思想和分治法很相似,划分子问题,通过子问题解决更高层的问题。但是两者明显的区别在于动态规划划分的子问题具有重叠的性质(不过独立性还是要保证的),而且一般用于解决最优化的问题~ 动态规划算法的解决步骤:1、我认为首先比较重要的还是正确的抽象化问题,然后得到问题的最优子结构。有一部分题目的描述方式完全是文字化的描述,这时就先抽象出其中的数学结构,然后根据数学结构得出. 阅读全文
posted @ 2012-12-25 17:19 weixliu 阅读(1055) 评论(0) 推荐(0) 编辑
摘要: 选择问题定义,实际上所有处理均可以推广到集合中包含重复数值的情形。 输入:一个包含n个(不同的)数的集合A和一个数i,1<=i<=n。 输出:元素x属于A,它恰大于A中其他的i-1个元素。1、最大值最小值 针对一个序列取得最大和最小值均需要n-1次比较。这是一个下限,确定最大值或者最小值的算法可以看作各个元素之间一场锦标赛,每次比较都是一场比赛,两个元素中较小的或者较大的获胜,除了最终的最大值和最小值,所有其他元素都需要输一次,所以n-1次是必须的。 接下来是一些比较有意思的问题,比如同时找出最小值和最大值,当然可以n-1次比较找出最大值,然后n-2次比较找出最小值,不过还是有比这 阅读全文
posted @ 2012-12-23 20:23 weixliu 阅读(12439) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 下一页