淘宝交叉面终获 offer 面试总结

AI 乔治 · 05/26 14:12

淘宝一面: 面试介绍 

  1. 自我介绍?
  2. 项目介绍? 
  3. 遇到的最大困难是什么?怎么解决的?
  4. 你觉得你能怎么优化这个项目?

面试题目 

  1. 讲一下 JVM 
  2. 讲一下 JVM 的分代回收以及具体算法 
  3. 将一下 JVM 的垃圾收集器,G1 和 CMS 有啥区别? 
  4. 讲一下一个变量从产生到结束所经历的过程,讲一下字符串常量的过程?5)将一下线程安全问题产生的原因? 
  5. 讲一下乐观锁和悲观锁
  6. 乐观锁是怎么保证一致性的 
  7. Integer 和 int 有啥区别,integer 中有哪些特殊的函数? 
  8. 讲一下数据库的隔离等级 
  9. 说一下 MVCC 
  10. 说一聚簇索引和非聚簇索引的有什么不同

淘宝二面: 

  1. 问了冒泡排序,快排,和归并排序及优缺点和优化 
  2. 网络方面有 osi 七层,tcp/ip 五层,分别有哪些协议及作用 
  3. 爬虫用的什么数据结构 
  4. tcp 的流量控制和拥塞控制 
  5. mysql 用的什么存储引擎,这个存储引擎用的什么数据结构 ,有哪些优缺点,怎么使用 
  6. jvm 的垃圾回收机制和垃圾收集器 
  7. spring 当中事物的隔离级别 
  8. jdk1.8 concurrenthashmap 的新的特性,有没有看过源码 
  9. threadlocal 了解吗 
  10. 问了 redis 的一些问题,项目中有(扩容,失效 key 清理策略等) 
  11. 剩下的都是项目的东西(kafka filebeat elk 原理,主从选举,复制等) 12,后面扩展的问了一些大数据相关的,问我一些大数据处理框架是否有了解

整个过程四十分钟左右

淘宝三面 

  1. 主要项目,你做过哪些项目,用过哪些技术?了解哪些框架?你觉得对你技术提升最高的是 哪一件事情,提升了你哪一方面的技术? 
  2. 讲一下 Spring AOP 和 IOC 的底层实现 
  3. 说一下 hashcode 的作用?HashMap 的底层实现?HashMap 和 HashTable 的区别
  4. 说一下 concurrentHashMap 和 hashTable 在性能上的区别?以及这种差异形成的原因 
  5. 讲一下堆以及堆排序 
  6. 说一下 B+tree 和二叉搜索树的区别?说一下二叉搜索树和 AVL 树、红黑树之间的差别 
  7. 给你两个文件(字符串形式的)如何找出他们之间的不同地方? 
  8. 你刚刚说的能怎么优化?

淘宝四面 交叉面 

本来以为三面结束就是 hr 面了,又收到一面交叉面

  1. 给你 50 亿行字符串,机器 4G 内存(只能一台机器),找出重复次数最多的那行字符串?(以行为单位,每行不超过 10 个字符)
  2. 设计一个算法,实现两个 10g 大文件在 10m 的内存中将两个大文件中重复的放进第三个 文件
  3. 快速排序的平均复杂多少?最坏情况是什么?(这个题估计就是缓和一下尴尬的气氛)