沃尔玛实验室采访 |第四套(高级软件工程师)
我在沃尔玛面试了高级软件工程师职位(6-8年经验,甚至4yrs exp的人也入围了)
笔试(Hacker Earth)【限时 90 分钟】
1)检查平衡括号
2) 宏伟的喷泉
https://www.hackerearth.com/problem/algorithm/magnificent-fountains/
3) 找出在一个素数范围内出现的最大位数
例如:范围(21 -40)->素数是23,29,31,37,39(2出现2次,3出现4次,1和7出现1次,9出现2次->答案是3)
==================================================== ======
面对面讨论
第一轮:(主要是Java)
1)自动拳击的主要优势是什么?
2)如何定义自定义注解?
3)如果线程抛出运行时异常,则在多个线程之外,其他线程会发生什么?
4)不使用LinkedHashhMap实现LRU缓存
5)解释Java中的垃圾收集过程
6)解释Java内存模型。
7)IsInstance和Instanceof的区别。
8)你能覆盖Arraylist的方法吗?如果有怎么办?
9)Hash Map和Tree Map的区别
10) 解释并发哈希映射。 (还有一些我不记得了)
第二轮:(更多数据结构)
1) 解释Java中的内部类。在设计著名的Java API 时,究竟在哪里使用了内部类。
2)反转一个链表。
3)树的最大高度。
4)查找给定节点的叶节点数。
5)Linkedin 是如何设计与他人建立联系的跳数。
第三轮:(算法)
1)删除字符串中的空格,而不使用内置函数并占用常量空间。
2) 找出在棋盘类型的方盒中从一个点移动到另一个点的可能性数。
面试过程很长,因为小组人数很少。 (上午 9 点至下午 7 点)
提示:
1) 相比亚马逊、Flipkart 和许多热门创业公司沃尔玛容易破解
2)准备好Java基础知识
3)擅长BackTracking、贪心算法和动态规划。
4)他们更强调解决方案而不是优化。
对于要参加驾驶的人来说,一切顺利。