腾讯云Java工程师一面 + 被捞一面 + 二面面经

181 阅读4分钟

【一面】全程 55min

  • 先自我介绍一下吧
  • Java1.8 的新特性?你说到了 Lambda 表达式,你说说它的优缺点?
  • Java 8 的 Stream 流用过吗?有什么特点?
  • 线程池创建的方式有哪些?ThreadPoolExecuter 的参数有哪些?
  • ArrayList 和 LinkedList 的区别在哪里?Queue 与 Deque 的区别?
  • HashMap 和 TreeMap 区别?
  • 假设有一个 10W 的数据请求,你会有什么方法来实现这些数据的增删改查?
  • 数据库的三大范式是什么?
  • MyISAM 和 InnoDB 的区别?
  • MySQL 主键索引和普通索引的区别是什么?谁的性能更好一些?如果是在 10W 级的数据下,谁的性能更好些?
  • 介绍一下联合索引吧?
  • 以(a,b,c)为例,在什么情况下,单查 b 也能够命中联合索引?
  • 算法题:手写代码实现单向链表的结构体,完成增删改查。
  • 反问环节:你有什么问题想问我的不?

面试总结:感觉问题的题目不是太难,只怪自己太菜,基础没掌握好,面试官人不错,要是有人捞,我还想再来一次!第二天流程已结束。。

好家伙,不知道发生了什么,我又开始了新的流程,这难道就是传说中的二战!!!还是腾讯云。

【一面】全程 46min

  • 自我介绍,
  • 接着就是来俩算法题:题 1:统计一串字符中,重叠字符出现的次数。(如 AAABBBCC,输出 A_3_B_3_C_2)题 2:求两个字符的最长公共子串
  • 你用过哪些数据库?MySQL 数据库的存储引擎了解过哪些?这些存储引擎的特点是什么?
  • MySQL 默认是什么存储引擎,为啥用这个?
  • InnoDB 和 MyISAM 的有啥区别?和 MEMORY 呢?
  • InnoDB 为啥索引的数据结果要用 B+树?
  • 为啥不用 Hash 索引?Hash 索引查找的时候不是更快吗?
  • 网络编程了解过吗?说说如何创建一个 Socket 连接
  • C++的基本数据结构了解过吗?
  • 反问环节:你有什么问题想问我的不?

【二面】全程 43min

今天上午突然给我发邮件让我下午二面,这霸道总裁的通知风格。。。

  • 看你有个比赛,你这个比赛里面做的什么?(15min)
  • 你还写过哪些应用程序,说说看?数据存储用的什么,web 服务器用的什么?
  • C++了解过吗?
  • 软件设计师什么时候考的??
  • 写过多进程和多进程吗?都在什么情况下用过?遇到了什么困难不?
  • 有没有 Linux 下的编程经验?
  • Linux 常用命令了解哪些?
  • 网络编程用过吗?Sokect?
  • Linux 中的 epoll 和 select 这些多路复用了解过吗?
  • 说说五层网络模型吧,说说对应的协议吧
  • 抓过网络包吗?
  • 如果要设计一个快速插入和查找的数据结构,你会用什么结构?Hash 冲突的解决方法?
  • 有一个容量为 N 的数组,里面存放了 N 个数,每个数的取值范围是 1~N,有没有什么快速办法判断是否有重复元素,哪个元素重复了?空间复杂度要求是 O(1)
  • 求二叉树深度的算法呢?说说看?时间和空间尽可能的小
  • 设计模式了解过吗?了解一下
  • UML 类图理解的怎么样?画个类图吗?
  • 云计算的知识了解吗?容器用过吗?大数据套件了解过吗?ELK 了解过吗?看过开源架构系统的代码吗?(这全是知识盲区啊。。。)
  • 分布式存储了解过吗?
  • 一个进程的栈大小是多少知道吗?打开文件的上限是多少?
  • 你觉得你擅长做什么业务?
  • 反问环节

总结:整个过程主动补充有点少,导致场面数次陷入安静的尴尬场面,最长的一次甚至长达 30 多秒。以后的面试还是要多多扩展自己讲的内容。

为免文章累赘,这里就不给每题都做出解答了,我整理好文档了,需要的兄弟直接点击传送门即可获取