刚开始,还是讨论比赛和分布式。后面问了我一道大量文本处理的问题“找出一个大文本中的Top3的字符串”。没有做过这方面的研究,答的不好。
1. Java问题:"讲一下JVM的结构。" 2. 网络问题:"TCP/IP的三次握手、四次挥手" 3. "淘宝用户的数据(购物车……)存在那里?怎么满足高并发?" 4. "输入两个整型数组,返回一个数组:两个数组中的公共值。"
其实,到这个时候,自己有点思路混乱了,有点紧张。我从快速排序算法开始写,然后用的方法也不是最好的。面试官不是很满意。
后面吃午饭的时候,我想到其实可以为O(nlgn)排序后,再O(m+n)就可以了。跟别人讨论的时候,我想到,针对某些特殊的情况;其实这个可以用哈希的思想来做。复杂度O(K),K为数组中的最大值。
考一下你对递归的掌握。
写一个函数,输入int型,返回整数逆序后的字符串。 如:输入123,返回“321”。 要求必须用递归,不能用全局变量,输入必须是一个参数,必须返回字符串。
当时,只做到了逆序输出(打印),并没有做到逆序返回字符串。
吃完午饭,跟别人讨论的时候,我突然想到这个要用到二叉树递归求解深度、叶子数等问题的一些思想:每次返回的时候加上上一次的返回值。
这个时候,面试官不是很满意,正好也该吃饭了。然后,面试官3说: 这样吧。我帮你找个数据研发的,你再去面试一下。让他来做评价吧。 虽然不情愿,但是还是同意了。毕竟这次表现太差了。
[2017-02-17]