BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / parttime-job / #159808同步于 2010/4/10
该镜像源已超过 30 天没有更新,可能在源站已被删除。
ParttimeJob机器人发帖

贴实习面经 (转载)

buptinside
2010/4/10镜像同步0 回复
[ 用户 buptinside 在转载时对文章内容进行了编辑 ] 发信人: buptinside (洞庭湖的麻雀), 信区: Job 标 题: 贴实习面经 发信站: 北邮人论坛 (Sun Mar 21 20:59:05 2010), 站内 ** 1. 百度 一面, 一个北邮的gg,主要是了解知识背景,问的很泛,简历过了一遍,然后就是聊天性的问答了。 * 内存管理 malloc/free, 这里我说了一下malloc 的简单实现,K&R C[1] 上面有介绍。 * vim 中怎样替换一行,怎样回到首行,最后一行。 * 父子进程间共享了哪些信息,怎样共享的,环境变量是否会共享。 * 进程锁机制,信号量机制,管道如何实现。信号量机制实在忘了,只好老实交代不会。 * 管道怎么使用。 * C++中delete 与 free 的区别,不知道。。 上面所有与Linux有关的知识全部都可以在APUE[2]中找到,看来这本书还是要再仔细的读读。 期间主要根据自己说的来问,中间我说到了我做过的东西: * 论坛登录器, python * 邮件发送器, python * 象棋引擎, 说了一下象棋设计的基本思想,用户界面+引擎部分,引擎的基本原理。 * 两个项目中的角色。 二面,一个JJ,相当nice。问的比较少,主要考察综合能力吧。 * 为什么选测试这个职位,推荐的人与你什么关系。 * 堆栈的区别,内存泄漏是什么意思。 * 算法题,给定一个由多个单词组成的集合,如果一个单词的最后一个字母是另一个单词的第一个字母,那么可以从第一个单词向第二个单词划一条有向线段,问所有单词能否构成一个封闭的环。 这里主要与面试官交互式的表达自己的想法,首先想到的是每个单词中有效部分只有第一个字母和最后一个字母,所以可以只考虑这两个字母,抽象出具体的问题。考虑到连线,想到了图论,如下图所以,第一个单词可以向第二个和第三个单词划一条有向线段。最终就是要找一条经历过所有点的简单闭路径。然后面试官笑了笑说差不多了,这个叫做最小连通分量。 a...m m....k m....d * 一个自动售货机要出产了,怎样测试它,想出尽可能多的需要测试的地方,然后针对具体的找零钱考虑需要测试的地方。 * 假如在产品即将发布的时候,你发现了一个bug,提交给R&D之后,他们认为这个bug出现的几率非常小,为了尽快发布产品,决定不处理这个bug,你将怎么做。 三面,一个gg,看上去挺严肃。 又是介绍项目,没法忽悠了,感觉说了几下就被问的没法继续说了。 根据简历又问了几个问题。 * 参加ACM校赛的经历。 * Java用的多吗? 我简历上可是写了熟悉Java啊。。我说了句就写过helloworld, 把那gg逗的笑个不停。 * shell怎么实现统计一个文本中某个字符串出现的次数。 * 一个文件中有若干行,每行固定9个字符, 五个数字(0~9),中间用空格隔开,怎么统计具体某个数字出现的次数,不要使用grep了。 这个真不会,只好直说,然后说我只能用C来实现了。 然后他问了下对awk熟悉多少,也就听说过的水平,知道有这么个东东。。 差不多就是这么多内容了,主要就是根据简历问的,所以对写在简历上的东西还是必须非常有把握,至少能忽悠个十来分钟没重复的话。 需要继续看的内容是shell编程, 具体的awk,sed,vim,都要会用,tr, find,grep都应该知道点。APUE这本书也得继续看,然后就是算法导论,基本就是这几本书,项目最好能多说点。 [1]K&R C, The C Programming Language. [2]APUE, Advanced Programming in the Unix Environment. 09/11/2009 ** 2. Adobe 2010年校招笔试, 当时在对外经贸笔的,纯粹去抄题目 - -|| 1. 实现快速排序。 2. 编写一个数据结构,实现大整数除法。用一个数组来表示大整数。 我说了下思路,就是化作大整数的减法来做。 3. 题目给出欧几里得求最大公约数的实现,请证明其正确性。 int gcd(int m, int n) { if(m%n != 0){ return gcd(n, m%n); } return n; } 【注】 原题给的是非递归实现, 我想不起来来, 这个递归是我自己写的。 这个证明算法导论书上有很详细的解答,用 循环不变式。可惜啊可惜, 看过很多遍就是写不出来。。 4. 给一根小木棍,随机切成三段,求它恰好能够构成一个三角形的概率。 5. 给出一个线性规划及其约束条件,要求写出算法步骤,不要求实现。。 已知一个整数X, 以及两个数组X1,X2,...,Xm; K1,K2,...,Km. 如果一个数组 n1,n2,...,nm 使等式成立: X1*n1 + X2*n2 + ... + Xm*nm = X. 并且满足如下约束: 0<=n1<=K1,0<=n2<=K2,...,0<=nm<=Km 那么称n1,n2,..nm这个数组为一组解。 要求求出所有解中 n1+n2+...+nm最小的一组。 ** 3 腾讯研究院实习 一面, 一个年轻的工程师, 最近从M$跳过来的。 Q: 其实不用穿这么正式的,这边都比较随意。 A: 我知道,但是为了显示我的重视, 我还是穿的正式一点了。 Q: 不错,凭这点,我给你加分啊。 Q: 讲讲你在百度的实习经历。 A: blah blah... Q: 两道题。 1. 用C/C++写一个函数实现如下功能。函数原型char * Reverse (const char *pStr); 假如字符串pStr中含有空格(用下划线_表示): This_is_a_cat 将其转换为cat_a_is_This, 并且要求所有空格的相对位置不变。 解答:将“所有空格的相对位置不变”理解错了。看到这个题目一下子就想起了去年校 赛时的一道题,基本是一模一样啊【boj 1503】。 很快就写完了, 考虑了函数参数为NULL, 内存分配失败出错处理,字符串中有连续字 符,首/尾字符为空格等情况。 但是后来告诉我说,要求的是空格相对位置不变, 如输入This_is_a__cat 要求输出 cat_a_is__This。 不过函数风格写的还可以,各种异常都考虑了,面试官给予了肯定。 2. 开放性问题, 如何测试百度地图和Google地图的准确性 - -|| 在一再指点下慢慢的挤了点东西出来, 很囧! 一面就这样算完了。看来算通过了, 要不然应该就不会有二面了。 二面, 一个年纪稍微大点的工程师,应该是总监级别的。 问了比较多的开放性问题。 Q:在百度待了那么长时间,有没有考虑回百度继续。 A:我非常希望能加入QQ。blah... Q:为什么先去了百度, 再来QQ。 不是一般来讲都认为百度更难进吗? A:blah blah.... Q:如果让你选择开发和测试, 你怎么选? Q:有没有什么职业规划? Q:用过腾讯的什么产品? Q:刚来北邮时有什么不习惯的吗? Q:你怎么看北邮? Q:给你个水杯, 怎么测试它? Q:这个房间呢? Q:参加过马拉松? A:是啊, 我还把参赛证书带来了呢!(拿出证书) Q:平时都跑多少啊?5km的成绩怎样?一周跑几天?今年还不跑? A:blah..... Q:好了, 差不多就这么多了。你在学校也西装领带的吗? A:不是的,我经过慎重考虑,才决定正装过来的。 over,让回来等通知。。
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。