今天跑去微信面试实习生了。。

2016-03-08 20:21:45 +08:00
 jusonalien

微信后台实习生面试(一面) (2016/3/8 3 : pm--5 : pm)

走到 TIT 创意园的时候才两点多一点点,约的时间是三点钟,等了大概半个小时多一点。面试官是一个三十来岁的男人,一上来就对着我的简历问我项目,他貌似没弄过虚拟化相关的东西,更不懂 qemu-kvm 的东西了,然后就问我这个缓存的意义啊,他从头问到尾,叫我解释一下这个虚拟机的体系结构。。 blabla 解释了一大堆他终于听明白了,然后说哎呀你们这个东西还是蛮有意思的,然后就叫我做题了,他直接在草稿纸上写了几道题给我,(写了四十分钟)题目是这样的

   1.实现一个字符串拷贝函数,要求可靠稳定,写得七七八八,感觉还 ok 吧。。

   2.一个程序分析 ,能分析出是六个出来,还让我画图给他解释一下,他说还挺清晰,不过那个关于缓冲区的 trick 就没答上来叫我自己去做实验验证一下。。答案和题目都在这个链接里面了。。我去。。。: http://blog.csdn.net/chdhust/article/details/10579001

   3.考察大端小端模式的转换的 ,有点坑爹,给了他提示之后才想起来大端小端,然后才一步步分析出来=0=

  

1 #include <stdio.h>
2
3 int main(void) {
4
5 short x[] = {1,2};
6 printf("%x \n",(int)x);
7 return 0;
8 }
   4.叫你实现二进制串的反转,比如 32Bit 的二进制数 头尾反转过来,要求尽可能高效。。结果只写了一个暴力的。。问我还有没有优化空间,我就说可以两头同时转换。。。然后他问还有没有优化的空间。。。想了很久都没想出来,然后叫我回去再思考一下。。。

  最后问我 TCP IP 怎么样,我说我网络只是上过课,没有太多实践过-。-,然后问我你是更多的偏向于操作系统一类的吧?我说是啊,然后又问我 fwrite 和 pwrite 的区别是什么。。我支支吾吾了几下没答上来。。。

  最后他问我还有什么问题问的吗? 我问了他实习生过来的话你们会安排什么任务。。他就说会有导师带。。 blablabla 一堆。。。然后送我走了,走的时候和我说平时要多多注意一些细节的东西。。哎:(

  我最后问他我这次面试结果通过了吗?他好像挺不愿意说,就叫我回去等电话通知。

  我回去坐地铁的时候,问了一下那个帮我内推的师兄说这个会不会挂了?。。他说面试结果这一类的问题是不能问的。。。

  就这样两个小时过去了,写题目用了大概四十分钟吧。。。问项目和题目问了块一个半小时了。。。时间过的很快。。

  哎 感觉很没底啊 QAQ 跪的概率应该有 50%吧。。。。求不要给我跪 TAT 。。。。。。

  现在的情况是只能慢慢等了咯。。。看命吧。。要是还能收到面试邀请就继续更新这个帖子。。
最后 各位 V 友评估一下本蒟蒻的希望大不大啊 QAQ

10003 次点击
所在节点    职场话题
60 条回复
jusonalien
2016-03-09 00:23:23 +08:00
@zeusLeeJh 额 请问您是?
jusonalien
2016-03-09 00:24:33 +08:00
@snnn 迟点再贴吧,主要还是考察我对错误机制的判定。。
zeusLeeJh
2016-03-09 00:26:58 +08:00
@jusonalien 只是一个喜欢潜水的校友罢了
oplang
2016-03-09 01:06:35 +08:00
@wodesuck 你式子里的“)”放错地方了,运算优先级错误,会先偏移再&。方法是分治法,完整程序如下:

#include <stdio.h>

unsigned int ReverseBits (unsigned int x) {
x = ((x & 0x0000ffff) << 16) | ((x & 0xffff0000) >> 16);
x = ((x & 0x00ff00ff) << 8) | ((x & 0xff00ff00) >> 8);
x = ((x & 0x0f0f0f0f) << 4) | ((x & 0xf0f0f0f0) >>4);
x = ((x & 0x33333333) << 2) | ((x & 0xcccccccc) >>2);// 0011 | 1100
x = ((x & 0x55555555) << 1) | ((x & 0xaaaaaaaa) >>1);// 0101 | 1010
return x;
}

int main () {
unsigned int x = 8;
printf("%u\n", ReverseBits ( x ));
return 0;
}
bk201
2016-03-09 09:01:41 +08:00
基本是挂了,除非限定时间没有更好的
jusonalien
2016-03-09 09:04:53 +08:00
@bk201 为啥呀 0 。 0
kiwi95
2016-03-09 09:44:59 +08:00
打印横杠那个结果是不确定的,虽然按分析确实是可能有 8 个,实际编译运行可能是 2 个, 4 个,或者 6 个,多运行几次结果可能不一样
zwpaper
2016-03-09 09:46:04 +08:00
@jusonalien 因为如果是第一选择会很积极的
jusonalien
2016-03-09 09:47:13 +08:00
@zwpaper 面试官那时候回应说还要回去多面试几个人,然后比较一下才会有结果 00
snow4young
2016-03-09 10:02:12 +08:00
不过给你发红包,过了给我发红包~
exoticknight
2016-03-09 10:03:35 +08:00
我报了前端还没有通知……
zwpaper
2016-03-09 10:11:52 +08:00
@jusonalien 所以你只能等,今天没消息就危险了
skylancer
2016-03-09 10:20:48 +08:00
人家都说细节问题太多
十有八九就跪了

还有居然问他面试过了没有这种问题

..GG
shenqi
2016-03-09 10:43:54 +08:00
GG 了的节奏,我就是那个三十多岁的男人系列。
samueldeng
2016-03-09 10:59:44 +08:00
我倒是觉得蛮大的~
drush
2016-03-09 11:25:22 +08:00
樓主準備找下一份吧
napsterwu
2016-03-09 11:27:43 +08:00
不是在公众号可以查状态嘛
magicdawn
2016-03-09 11:39:11 +08:00
3.考察大端小端模式的转换的 ,有点坑爹,给了他提示之后才想起来大端小端,然后才一步步分析出来=0=

  

1 #include <stdio.h>
2
3 int main(void) {
4
5 short x[] = {1,2};
6 printf("%x \n",(int)x);
7 return 0;
8 }

这是考啥啊~这段代码没体现大小端啊
magicdawn
2016-03-09 11:49:56 +08:00
printf("%x \n", *((int*)x)); // 20001 这样?
Felldeadbird
2016-03-09 12:08:52 +08:00
我竟然不会……看来我的水平还是很低。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/262009

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX