代码改变世界

各大计算机公司 笔试及面试 题目 - 腾讯 (HTTP 协议)

2011-10-11 21:44 by CSWolf, 1586 阅读, 0 推荐, 收藏, 编辑
摘要:引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of HTTP)的建议已经提出。HTTP协议的主要特点可概括如下:1.支持客户/服务器模式。2.简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简... 阅读全文

各大计算机公司 笔试及面试 题目 - 网易(二)

2011-10-11 08:58 by CSWolf, 298 阅读, 0 推荐, 收藏, 编辑
摘要:1、如何设计一个类,使得它只能在堆上分配 或 是在栈上分配;2、设计一个函数,输出 如下:(a),(b),.....(z);(a,b),(a,c),.....(a,z)(b,c),(b,d),......(b,z)......(y,z)(a,b,c),(a,b,d)....(a,b,z)......(x,y,z).......(x,y,....,z)3、事务是什么?4种特征,隔离性的级别4、还有两个是关于 虚函数的。 阅读全文

MapReduce源码分析总结

2011-10-10 08:53 by CSWolf, 288 阅读, 0 推荐, 收藏, 编辑
摘要:MapReduce源码分析总结转者注:本来想在Hadoop学习总结系列详细解析HDFS以及Map-Reduce的,然而查找资料的时候,发现了这篇文章,并且发现caibinbupt已经对Hadoop的源代码已经进行了详细的分析,推荐大家阅读。转自http://blog.csdn.net/HEYUTAO007/archive/2010/07/10/5725379.aspx参考:1 caibinbupt的源代码分析http://caibinbupt.javaeye.com/2coderplay的avaeyehttp://coderplay.javaeye.com/blog/295097http:// 阅读全文

字符串:KMP Eentend-Kmp 自动机 trie图 trie树 后缀树 后缀数组

2011-09-29 21:50 by CSWolf, 401 阅读, 0 推荐, 收藏, 编辑
摘要:涉及到字符串的问题,无外乎这样一些算法和数据结构:自动机 KMP算法 Extend-KMP 后缀树 后缀数组 trie树 trie图及其应用。当然这些都是比较高级的数据结构和算法,而这里面最常用和最熟悉的大概是kmp,即使如此还是有相当一部分人也不理解kmp,更别说其他的了。当然一般的字符串问题中,我们只要用简单的暴力算法就可以解决了,然后如果暴力效率太低,就用个hash。当然hash也是一个面试中经常被用到的方法。这样看来,这样的一些算法和数据结构实际上很少会被问到,不过如果使用它们一般可以得到很好的线性复杂度的算法。老实说,我也一直觉得字符串问题挺复杂的,出来一个如果用暴力,hash搞不定 阅读全文

各大计算机公司 笔试及面试 题目 - 专题(链表 一)

2011-09-29 21:46 by CSWolf, 584 阅读, 0 推荐, 收藏, 编辑
摘要:面试的时候,书写程序要注意以下几点1.确认了解题意,如果对题意了解不清,应该向面试人员问清楚2.明确题意后,首先思考找到一个复杂度可以接受的正确算法,并表述出来,注意可以在草稿纸上写写划划,进行验证3.观察复杂度能否再次降低4.书写程序时,一定要认真,坚决防止出现逻辑错误,并根据程序具体分析可能的极端情况,处理好边界,并自己进行用例测试,以验证程序。节点的定义如下:typedef struct list {int key;struct list *next;}list;(1)已知链表的头结点head,写一个函数把这个链表逆序 ( Intel)list * reverse(list * head 阅读全文

各大计算机公司 笔试及面试 题目 - 专题(字符串 二)

2011-09-29 21:45 by CSWolf, 477 阅读, 0 推荐, 收藏, 编辑
摘要:转载请注明作者:phylips@bmy出处:http://duanple.blog.163.com/blog/static/70971767200982584340501/1.求最长回文子串。[解法]:将整个字 符串反过来写在原字符串后面,中间用一个特殊的字符隔开。这样就把问题变为了求这个新的字符串的某两个后缀的最长公共前缀。而某两个后缀的lcs的计算利用后缀数组,可以O(1),这样总的复杂度就可以降为O(n)。eg:aabebf ----> aabebf&fbebaa假设存在一个回文串,则它具有如下特点,|------<---*--->--|&|--< 阅读全文

各大计算机公司 笔试及面试 题目 - 专题(字符串 一)

2011-09-29 21:43 by CSWolf, 328 阅读, 0 推荐, 收藏, 编辑
摘要:1.将字符串转换成整数,将整数转换为字符串,浮点数与字符串的转换(atoi itoa)int atoi(const char *str){ int res = 0; int sign; assert(str != NULL); if(str[0] == '-') sign = -1; else if(str[0] == '+') sign =1; else if(isdigit(str[0])){sign = 1;res=str[0] - '0';} for(int i = 1 ; str[i] != '\0' ; i++){ a 阅读全文

各大计算机公司 笔试及面试 题目 - 专题(海量数据处理 二)

2011-09-29 20:09 by CSWolf, 676 阅读, 0 推荐, 收藏, 编辑
摘要:1、海量数据分布在100台电脑中,想个办法高校统计出这批数据的TOP10。方案1:s在每台电脑上求出TOP10,可以采用包含10个元素的堆完成(TOP10小,用最大堆,TOP10大,用最小堆)。比如求TOP10大,我们首先取前10个元素调整成最小堆,如果发现,然后扫描后面的数据,并与堆顶元素比较,如果比堆顶元素大,那么用该元素替换堆顶,然后再调整为最小堆。最后堆中的元素就是TOP10大。2、 1000万字符串,其中有些是重复的,需要把重复的全部去掉,保留没有重复的字符串。请怎么设计和实现?方案1:这题用trie树比较合适,hash_map也应该能行。3、一个文本文件,找出前10个经常出现的词, 阅读全文

海量数据处理方法总结

2011-09-29 19:28 by CSWolf, 332 阅读, 0 推荐, 收藏, 编辑
摘要:大数据量的问题是很多面试笔试中经常出现的问题,比如baidu google 腾讯 这样的一些涉及到海量数据的公司经常会问到。下面的方法是我对海量数据的处理方法进行了一个一般性的总结,当然这些方法可能并不能完全覆盖所有的问题,但是这样的一些方法也基本可以处理绝大多数遇到的问题。下面的一些问题基本直接来源于公司的面试笔试题目,方法不一定最优,如果你有更好的处理方法,欢迎与我讨论。1.Bloom filter适用范围:可以用来实现数据字典,进行数据的判重,或者集合求交集基本原理及要点:对于原理来说很简单,位数组+k个独立hash函数。将hash函数对应的值的位数组置1,查找时如果发现所有hash函数 阅读全文

各大计算机公司 笔试及面试 题目 - 专题(海量数据处理 一)

2011-09-29 19:28 by CSWolf, 448 阅读, 0 推荐, 收藏, 编辑
摘要:1、海量日志数据,提取出某日访问百度次数最多的那个IP。 首先是这一天,并且是访问百度的日志中的IP取出来,逐个写入到一个大文件中。注意到IP是32位的,最多有个2^32个IP。同样可以采用映射的方法,比如模1000,把整个大文件映射为1000个小文件,再找出每个小文中出现频率最大的IP(可以采用hash_map进行频率统计,然后再找出频率最大的几个)及相应的频率。然后再在这1000个最大的IP中,找出那个频率最大的IP,即为所求。或者如下阐述(雪域之鹰):算法思想:分而治之+Hash1.IP地址最多有2^32=4G种取值情况,所以不能完全加载到内存中处理;2.可以考虑采用“分而治之”的思想, 阅读全文