今天直接去公司面的
但是吧,游戏公司小姐姐就比较好看,我的HR也是其中之一哦。
去公司见到真人,哇hhh~。
回归正题。。。
面试官是我的老学长了。
比较友好,给我过了(因为是学长emmm),虽然我回答得很菜。
两道考智力的算法题。
1. 10个药厂,当中有0-10个不知道的厂家为不合格厂家,合格厂家生产的药品都为10g,不合格厂家生产的为9g,现在给出10个厂家任意多数量的药品,请通过电子秤称(精确到1g)出不合格药品来自哪个厂家。
一开始我就没太清楚这个所谓的药品是知道厂家的,只是不知道重量,也不知道这个需要称的药品的数量是自己可以决定的,我还凑出10a+9b=总质量的关系式,我自己都很懵,感觉在阅读理解。
后来他给我解说我才理解:二进制的题,10个厂家,每个厂家选取2的次方个药品合在一起称一次,那么可以保证最后的结果与厂家的关系就是唯一的。
2. 现有1万多个日志文件,每个日志文件上百万行数据,总共的8G内存不够存储,每行数据为两个PK的玩家的ID,现需要统计出活跃度TOP100的玩家ID。
我觉得我不适合这种面试,当面的时候,脑子全是空白,甚至不知道问题的核心在哪。。。直到面试官提示了很多才知道这个题目是干嘛。。以至于我都没怎么回答上。我想到两个,都被pass掉,我首先说用hash表,两级或者多级hash表,一级hash表相当于缓存,设置大小为100,二级hash表可以大一些,然后一级hash表缓存次数最多的ID,和cache原理一样。被pass的原因就是,面试官说这样每次都得计算次数,还得比较,开销太大。。我语塞。。。于是想到优先级队列,维护节点数为100的堆,然后又被pass,说还是的一个一个统计。???我满脸疑问,这不一个一个统计怎么知道谁出现次数最多呀?!
结果他将的什么方法,我当时听成另外一种思路了,然后让我把代码写纸上,以至于我写不出来,我又手机搜了半天,类似的题,但是这意思还是得一个一个统计。区别是,将原来几个大的日志文件,拆分成每个大小低于8G的文件(原来这个问题的关键在这啊?!根本不在于你如何求TOP100,管你用hash缓存还是优先队列还是什么排序),每次调用一个这样的文件,内存肯定可以够用,计算出里面的TOP100。假设拆分之后有m个这样的文件,那么最后就会有m个优先队列,即m个TOP100,最后再维护一个优先队列,存储m个队列中的TOP100即可!!!
是不是考智力的,没有啥算法的,就看你会不会想到,反正我是一个阅读理解不好,听力不好的,题目都不知道关键在哪emmm
另一个HR跟我谈了谈:我对公司的前景怎么看,以及自我评价的三个方面(然后说我说话方式很像教授,丹田用力emmm),爱好(自夸说好多爱好,说自己被称为文艺青年,虽然假文艺,她还问我是不是有女朋友?我像吗??她说我的爱好比较招女孩子喜欢,,这都被你看出来了。我只好腼腆地说,我比较内向,然后我的爱情观是遇到非常喜欢并且互相喜欢的才愿意在一起。。。hhh~emmm),另外就是问我拿到其他的offer或者有没有考虑其他实习,然后就是薪资要求,我说我不太了解游戏公司的薪资,让她先给我说个范围,她又说跟互联网公司差不多的,让我说,我就说了一个范围吧(15-20k),她说之后过了还会谈薪资的。
全部评论
(4) 回帖