腾讯IEG后台开发实习一面

腾讯IEG后台开发实习一面

这已经是春招的第四面了,只是进度还是一面……这次面的是IEG的后台开发,面试官和蔼有趣,特别体贴,感动泪目,就算我不过也值了。

补充:四次一面的我本来都不抱希望,下午四点面的,吃个晚饭回来就过了,感天动地,面试官人真的太好了,感恩。


一、基础知识

面试开始前,我先了解了面试官的方向,他的工作包括各种游戏背后大数据处理等。
加粗的为我个人不会,日后强化。
1、各种不同网络模型,比如select、epoll了解的怎么样。。。我听不懂,只知道网络模型十个字,就硬答了OSI七层和TCP/IP四层,答完面试官笑了说不是想让我答这个。。。
2、三次握手四次挥手why,为啥要等2MSL。


二、算法题

第一题:
合并多个链表,每个链表都是排序的,最后输出一个排序的链表。我用一个map储存全部节点,然后因为map自动排序,最终遍历一次逐一串连就行。但是问题来了,我对map的迭代器不熟悉,折腾了半天还是面试官允许我上网查才行的。。。

第二题:
比较两个二叉树是否相等,面试官特意出的简单题,一分钟解决。

第三题:
两个超大文件,如何找到他们相同的值。面试官一直引导我,我提出用分治的思想去解决。


三、总结

多刷题,熟悉算法。赶紧把STL过一遍。。。
Linux也要加紧学习,做出一个能展示的项目。
WXG简直不是人去的


四、部分答案补充

select、poll、epoll模型: https://blog.csdn.net/davidsguo008/article/details/73556811

大数据面试题

转自:https://blog.csdn.net/varyall/article/details/80518233

step1:遍历文件a,对每个url求取hash(url)%1000,然后根据所取得的值将url分别存储到1000个小文件(记为a0,a1,…,a999,每个小文件约300M),为什么是1000?主要根据内存大小和要分治的文件大小来计算,我们就大致可以把320G大小分为1000份,每份大约300M(当然,到底能不能分布尽量均匀,得看hash函数的设计)

step2:遍历文件b,采取和a相同的方式将url分别存储到1000个小文件(记为b0,b1,…,b999)(为什么要这样做? 文件a的hash映射和文件b的hash映射函数要保持一致,这样的话相同的url就会保存在对应的小文件中,比如,如果a中有一个url记录data1被hash到了a99文件中,那么如果b中也有相同url,则一定被hash到了b99中)

所以现在问题转换成了:找出1000对小文件中每一对相同的url(不对应的小文件不可能有相同的url)。然后再读取文件a,遍历文件b中每个url,对于每个遍历,我们都执行查找hash表的操作,若hash表中搜索到了,则说明两文件共有,存入一个集合。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值