09 2014 档案

摘要:今天面试被一道没见过的题,完全整闷了。求一段字符串的最长重复子串。后来网上看看博客,竟然可以用KMP写,为自己的无知感到羞愧。好吧,我来学习一下如何用KMP方法解决这样的问题,关键是next的特性来解决这个问题。#include #include using namespace std;int ... 阅读全文
posted @ 2014-09-25 19:29 Awy 阅读(328) 评论(0) 推荐(0)
摘要:1.树的子结构问题,参照《剑指offer》上面试题18.bool DoseTree1HaveTree2(BinaryTreeNode *pRoot1, BinaryTreeNode *pRoot2){ if(pRoot2 == NULL) return true; if(p... 阅读全文
posted @ 2014-09-24 21:23 Awy 阅读(293) 评论(0) 推荐(0)
摘要:1. 编写一个方法,洗一副牌。要求做到完美洗牌,换言之,这副牌52!中排列组合出现的概率相同。假设给定一个完美的随机数发生器。 假设有个方法shuffle对n-1个元素有效,我们可以用它来打乱n个元素的次序。我们会先打乱前n-1个元素的次序,然后,取第n个元素,将它与数组中的元素随机交换。这是递归... 阅读全文
posted @ 2014-09-23 23:51 Awy 阅读(398) 评论(0) 推荐(0)
摘要:昨天去去哪儿笔试,碰到了一个我们一直很熟悉的命令(diff——ubuntu下面),可以比较字符串,即根据最长公共子串问题,如果A中有B中没有的字符输出形式如下(-ch),如果A中没有,B中有可以输出如下形式(+ch).#include #include #include using namesp... 阅读全文
posted @ 2014-09-23 09:51 Awy 阅读(552) 评论(3) 推荐(0)
摘要:以前一直不懂LCS问题,然而找工作被LCS折磨的,与那个公司无缘了。 最长公共子序列问题是一道经典的动态规划问题,最长公共子序列问题也有最优子结构。即:Xi即X序列的前i个字符(1属于LCS(X,Y);若:xm==yn(最后一个字符相同),则不难用反证法证明:该字符必是X与Y的任一最长公共子序... 阅读全文
posted @ 2014-09-23 09:20 Awy 阅读(455) 评论(0) 推荐(0)
摘要:昨天同学问我一道关于数组分割的问题——有一个无序、元素个数为2n的正整数数组,要求:如何能把这个数组分割为元素个数为n的两个数组,并是两个子数组的和最接近。 假设2n个整数之和为sum。从2n个整数中找出n个元素的和,有三种可能:大于sum/2,等于sum/2,小于sum/2。可以考虑小于等于... 阅读全文
posted @ 2014-09-21 10:10 Awy 阅读(362) 评论(0) 推荐(0)
摘要:Trie树也称字典树,因为其效率很高,所以在在字符串查找、前缀匹配等中应用很广泛,其高效率是以空间为代价的。利用串构建一个字典树,这个字典树保存了串的公共前缀信息,因此可以降低查询操作的复杂度。下面以单词为例,插入、查找和删除实现#define MaxN 26typedef struct TrieN... 阅读全文
posted @ 2014-09-17 23:31 Awy 阅读(189) 评论(0) 推荐(0)
摘要:所谓的Bit-map就是用一个bit位来标记某个元素对应的Value, 而Key即是该元素。由于采用了Bit为单位来存储数据,因此在存储空间方面,可以大大节省。 腾讯面试的时候,让写了一个BitMap,以前没怎么写过,不知道如何去写,当时只是知道哪一位置存在置为1,不存在置为0;脑袋一热,竟然... 阅读全文
posted @ 2014-09-17 16:21 Awy 阅读(441) 评论(0) 推荐(0)
摘要:正直找工作面试巅峰时期,有幸在学校可以听到July的讲座,在时长将近三个小时的演讲中,发现对于找工作来说,算法数据结构可以算是程序员道路的一个考量吧,毕竟中国学计算机的人太多了,只能使用这些方法来淘汰了,但是说到一点,互联网公司找的是会写代码,有思想的程序员,而不是一些公务员,你招的不是那些搞行... 阅读全文
posted @ 2014-09-03 23:10 Awy 阅读(234) 评论(0) 推荐(0)