而且,这些题目乍一 看确实是毫无头绪,无从下手,完全就是坑求职者的,其实求职者只要从惊慌失措中冷静下 来,稍加分析,也就那么回事。因为此类题目比较灵活,属于开放性试题,一般没有标准答 案,只要弄清楚了回答要点,分析合理到位,具有说服力,能够自圆其说,就是正确答案, 一点都不困难。
例如,面试官可能会问这样一个问题:“请你估算一下一家商场在促销时一天的营业 额?”,求职者又不是统计局官员,如何能够得出一个准确的数据呢?求职者家又不是开商 场的,如何能够得出一个准确的数据呢?即使求职者是商场的大当家,也不可能弄得清清楚 楚明明白白吧? 难道此题就无解了吗?其实不然,本题只要能够分析出一个概数就行了,不一定要精确 数据,而分析概数的前提就是做出各种假设。
以该问题为例,可以尝试从以下思路入手:从 商场规模、商铺规模入手,通过每平方米的租金,估算出商场的日租金,再根据商铺的成本 构成,得到全商场日均交易额,再考虑促销时的销售额与平时销售额的倍数关系,乘以倍数, 即可得到促销时一天的营业额。具体而言,包括以下估计数值:
1)以一家较大规模商场为例,商场一般按 6 层计算,每层大约长 100m,宽 100m,合 计 60000m2的面积。
2)商铺规模占商场规模的一半左右,合计 30000m2。
3)商铺租金约为 40 元/ m2,估算出年租金为 40×30000×365=4.38 亿。
4)对商户而言,租金一般占销售额 20%左右,则年销售额为 4.38 亿×5=21.9 亿。计算 平均日销售额为 21.9 亿/365=600 万。
5)促销时的日销售额一般是平时的 10 倍,所以大约为 600 万*10=6000 万。
此类题目涉及面比较广,例如:估算一下北京小吃店的数量?估算一下中国在过去一年方便面的市场销售额是多少?估算一下长江的水的质量?估算一下一个行进在小雨中的人 5min 内身上淋到的雨的质量?估算一下东方明珠电视塔的质量?估算一下中国去年一年一 共用掉了多少块尿布?估算一下杭州的轮胎数量?但一般都是即兴发挥,不是哪道题记住答 案就可以应付得了的。遇到此类问题,一步步抽丝剥茧,才是解决之道。
经验技巧 5 如何回答算法设计问题?
程序员面试中的很多算法设计问题,都是历年来各家企业的“炒现饭”,不管求职者以 前对算法知识学习得是否扎实,理解得是否深入,只要面试前买本《程序员面试笔试宝典》 (编者早前编写的一本书,由机械工业出版社出版),学习上一段时间,牢记于心,应付此类 题目完全没有问题,但遗憾的是,很多世界级知名企业也深知这一点,如果纯粹是出一些毫 无技术含量的题目,对于考前“突击手”而言,可能会占尽便宜,但对于那些技术好的人而 言是非常不公平的。所以,为了把优秀的求职者与一般的求职者能够更好地区分开来,他们 会年年推陈出新,越来越倾向于出一些有技术含量的“新”题,这些题目以及答案,不再是 以前的陈谷子烂芝麻了,而是经过精心设计的好题。
在程序员面试中,算法的地位就如同是 GRE 或托福考试在出国留学中的地位一样,必 须但不是最重要的,它只是众多考核方面中的一个而已,不一定就能决定求职者的生死。虽 然如此,但并非说就不用去准备算法知识了,因为算法知识回答得好,必然会成为面试的加 分项,对于求职成功,百利而无一害。那么如何应对此类题目呢?很显然,编者不可能将此 类题目都在《程序员面试笔试宝典》中一一解答,一来由于内容众多,篇幅有限,二来也没 必要,今年考过了,以后一般就不会再考了,不然还是没有区分度。编者以为,靠死记硬背 肯定是行不通的,解答此类算法设计问题,需要求职者具有扎实的基本功以及良好的运用能 力,编者无法左右求职者的个人基本功以及运用能力,因为这些能力需要求职者“十年磨一 剑”地苦学,但编者可以提供一些比较好的答题方法和解题思路,以供求职者在面试时应对 此类算法设计问题。“授之以鱼不如授之以渔”,岂不是更好?