欢迎来到天天文库
浏览记录
ID:49072300
大小:23.50 KB
页数:6页
时间:2020-02-27
《xunlei迅雷笔试总结.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、迅雷的两次笔试都感觉发挥不是那么好,第一笔除了最后一道题的排列组合C(mn)不知如何用C(m-1n)加上一个数得到外,其它好像不会有问题,但最后还是挂了,说明前面的选择题有不少做错,选择题都是考些C++语法基础的东西,这些东西要重新过一遍。第二次笔试全都是编程实现的题目,一看上去全部都会做,就是写的不好,说到底还是没有先理清整个程序的过程再动笔,越急着动笔就会越乱,时间会越不够,写出来也会很多要修改。迅雷我如果能到面试,估计还是过不了关,听同学说面试第二轮会问些涉及windowsAPI的东西,还有问设计模式的东西,这2个东西我肯定不会了,而且到第三轮面试,主要是谈薪水和时间安排的时候,
2、居然也有人被刷掉。。。1.实现memcpy(void*dest,constvoid*src,unsignedintcount)2.合并两个链表Lsit*merge(List*l1,List*l2),合成的新链表要以data从大到小有序3.实现字符串转换"Ilovethisgame"转换成"gamethisloveI",char*convert(char*s)4.实现一个高效率的程序(包括所需程序代码),以尽量短的时间,将用户信息表中150张按照时间hash的表(每张表的数据量为100万,数据字段包含《最近修改时间戳/username/nickname/出生地/所在地/年龄/性别/自我介
3、绍》),转换成按照usernamehash的100张表。转换过程方法和过程需要考虑: a)尽可能短的时间中断用户服务; b)尽可能少的使用机器内存。要求先写编程思路,再写代码,还有适当的注释除了第一题外,都是考数据结构的,自己也是偶尔在网上做了迅雷的在线题,通过后才会去做笔试(迅雷派人到武汉来了),不过感觉应该是大三的去比较合适,自己大二还不太适合,呵呵。当时做的时候感觉做的不太好,用STL编程太入迷了,结果很多基础的东西都没处理好,不过通过这次笔试,发现基础真的很重要。不明白为什么招C++工程师居然不考STL,难道STL有些公司不喜欢用,迅雷网上试题考C++的东西也很少,大部分是C语
4、言的东西(不过基础一定要好)。现在又发现了Boost,不知道自己学的有没有用,哎,郁闷啊,难道一定要去搞Java吗,下学期有Java的课程,还要在语言上花很多时间啊....还有算法分析与设计的课程,觉得这才是重点与难点,要加油啊。1、选择题30道如chara=123;a=a
5、057;printf("%d%o",a,a);之类2、简答(1) static的特点(2)引用和指针的区别(3)记不起来了(4)如何使图像变得平滑3、编程题(1)内存复制(2)有效管理类(3)两数组的中位数,时间复杂度o(lgn)附(1): void memcpy(void* pvTo, vo
6、id* pvFrom, size_t size) { void* pbTo = (byte*)pvTo; void* pbFrom = (byte*)pvFrom; ASSERT(pvTo != NULL && pvFrom != NULL); //检查输入指针的有效性 ASSERT(pbTo>=pbFrom+size
7、
8、 pbFrom>=pbTo+size);//检查两个指针指向的内存是否重叠 while(size-->0) *pbTo++ == *pbFrom++; return(pvTo);
9、 } void * memcpy(void *s, const void *s0, size_t n) { if (n != 0) { char *s1 = s; const char *s2 = s0; do { *s1++ = *s2++; } while (--n != 0); } return (s); } 各种情况包括:1、参数是指
10、针,检查指针是否有效2、检查复制的源目标和目的地是否为同一个,若为同一个,则直接跳出3、读写权限检查4、安全检查,是否会溢出memmove考虑重叠问题1. 给你10台机器,每个机器2个cpu,2g内存,现在已知在10亿条记录的数据库里执行一次查询需要5秒,问用什么方法能让90%的查询能在100毫秒以内返回结果。 2. 一个长度为10000的字符串,写一个算法,找出最长的重复子串,如abczzacbca,结果是bc。3. 一个保存有10000个U
此文档下载收益归作者所有