腾讯面试经历小记

今天早上突然接到了腾讯的电话,要我下午去面试。于是赶紧起床,上网搜各种面试题。随便看了几题后,发现都好难啊,算了,到时候知道什么就回答什么吧。整理了下仪表就出发了。

今天天气很好,我骑车从清华西门出发,穿越北大,来到了银科大厦,据说这里16-21楼都是腾讯公司的地盘。到了20楼,一个年轻的帅哥领我进去。腾讯的办公环境很大、很宽松。面试我的是两个面试官,除了刚才那位帅哥,还有一位美女(后来知道是电子系3字班的直系学姐)。帅哥对我说:“不用紧张,随便聊聊~”。

刚开始,他们问了我一些个人情况,比如现在几年级啊,能实习多久啊,毕业后是否准备工作……等等。接着,他们看着我的简历,问我做过的一些项目的情况。我先说了一个比较偏物理的关于spp波导的研究,估计学姐能听懂一些,帅哥估计不是这专业的。看到他们一脸茫然,我就转移话题,说了一些他们比较感兴趣的。先说了关于“基于Fourier级数的电子音乐实现”的内容,我就把大致原理和过程说了,帅哥挺感兴趣,但也没有细问。后来我又说我用MATLAB实现过JPEG压缩编码,这个貌似跟他们的方向比较接近,他问我为什么JPEG图像压缩要用DCT变换,为什么不用其它变换(比如Fourier变换)。我说DCT变换可以把低频分量和高频分量分开,通过去除对人眼不敏感的高频分量达到有损压缩的目的。他接着问Fourier变换也可以达到分开高、低频分量的目的啊?我说通过DCT变换可以得到一个变换阵,矩阵的左上角都是低频分量,且数值较大;而右下角都是高频分量,数值较小。经过量化后,右下角绝大部分都变为0了。然后此时如果我们把高频分量扔掉,那么可以以最小的失真度获得最大的压缩。他貌似还不是很满意这个答案,最后他说:人类研究发现(不管是理论上也好,经验也好),对于图像这种信号,它的分布函数决定了利用DCT变换处理是一种最优化的方法,就像你刚才说的,这时我们用DCT变换就能获得很多0,压缩效果最好。如果换做其他形式的信号,DCT变换就不是最优的了。

接下来他问了一些编程的问题:
第一题,他随便写了一个表达式(如下),问我是什么意思。

int*(*f[10])(int*)

我说,左边的int*是返回类型,右边的int*是函数参量类型,中间的*f[10]是指针数组,表示一个10个元素的数组中每个元素的类型是指针。

第二题,他问我编译器实现虚函数的机制是什么?编译器怎么知道是调用基类的成员函数还是派生类的成员函数?我没有学过编译器之类的知识,所以答不上来。这时学姐在一旁对帅哥说:“可能他没学过,电子系学的还是比较简单的语法之类的,这个我也不会。”对我说:“不会没关系!”帅哥问我学的是什么教材,我说谭浩强,他笑着说:“那不会很正常,呵呵,他的书残害了一代青年,我当年也深受其害。”

第三题,比较简单,他问我RISC是什么(我简历中写我实现过32位RISC处理器),我说精简指令集计算机。他接着问还有一种是什么?我说CISC。他又问:“我们现在用的比如奔腾是哪种?”我说:“当然是CISC啊,我们用的个人计算机基本都是x86计算机嘛!”他最后问:“那你知道哪些是用RISC的?”这个我一下子没想出来,他随口对学姐说了句:“好像龙芯是的。”我恍然大悟,“对对对,龙芯是的!”

最后,他又问我信号与系统的内容,“请你说说FT、DFT、DTFT、FFT的关系”,这个当然很简单啦,我一口气说完了。

总之,这次面试还算成功吧。学姐人超好,每当问到我不知道的问题时,她就帮我解围,对帅哥说:“别问这个了,这个我也不知道,平时也用不到。”他们还推荐了《C专家编程》(其实我有,但束之高阁了),对付面试很管用。

静等通知……

本文作者:清风行云
目前我开通了新博客,最新的内容和资讯都会第一时间在新博客发布,欢迎关注我的新博客 iFreeThinking.com ! 
本文版权归 清风行云博客园 共有,欢迎转载!但未经作者同意,必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利!
原文地址:https://www.cnblogs.com/passingcloudss/p/2029437.html