content.md 5.0 KB

邓心一——面试记录

菜鸟 3月9日 电话 一面 45min

  1. 自我介绍
  2. 讲项目,技术选型怎么做的
  3. Java集合类,rehash,HashMap为什么线程不安全,举例子
  4. 100首歌曲,100次播放后恰好全部放完,实现随机生成播放顺序的算法
  5. 垃圾回收,jdk1.8怎么检查full GC
  6. 事务四大特性,PostgreSQL与MySQL区别,数据库查询怎么优化,left join
  7. 用没用过Spring
  8. 10个大文件,每个1G,单机内存只有2G,找到出现频率最高的前10行。按hash划分,如果都划分到少数几个文件里,导致文件很大,怎么办
  9. 怎么提升单机的并发处理能力
  10. 熟悉哪些设计模式,什么是代理模式
  11. 如何实现分布式Session
  12. 旅行商问题,很多个城市的时候怎么办(开放性问题)

腾讯TEG 3月20日 现场 一面 45min

  1. 自我介绍
  2. 挑一个项目讲讲,画结构图
  3. 常用的排序算法,时间空间复杂度
  4. 二叉树,红黑树,B+树
  5. I/O多路复用
  6. TCP三次握手,四次挥手,状态转移
  7. Socket了解吗
  8. 死锁,死锁避免
  9. 最长公共子串,手写DP数组递推过程

腾讯TEG 3月20日 现场 二面 40min

  1. 反转链表(递归没想明白,卡了二十分钟)
  2. 做过最有挑战的项目

回去等通知,第二天官网查询,不合适

菜鸟 3月21日 电话 二面 40min

之前没有通知,晚上七点半突然打电话过来

  1. 自我介绍
  2. 做过的项目
  3. 作为信通专业的学生,与科班出身的同学相比,有什么优势/不足
  4. Java多线程类,线程间通信,同步/异步的方法有哪些
  5. 熟悉哪种数据结构,ArrayList扩容策略,HashMap,ConcurrentHashMap
  6. MySQL存储引擎知道哪些,对比
  7. 垃圾回收
  8. 有什么问题要问

没有问算法题

字节跳动 3月23日 现场 一面 50min

  1. 介绍项目
  2. poll, select, epoll
  3. 进程和线程
  4. C++了解吗,什么是虚函数
  5. Golang的面向对象和C++的面向对象有什么区别
  6. 介绍一下智能合约是干什么的
  7. 计算字符串算术表达式,写到一半面试官问思路,在他的引导下完成了入栈\出栈的规则表。面试官把题目改成:计算只有加减法的算术表达式
  8. 如果需要添加自定义运算符,怎么定义接口
  9. 有什么问题想问

面试官读研究生的时候自己开发了一个计算器项目

字节跳动 3月23日 现场 二面 40min

  1. 自我介绍
  2. 做过的项目
  3. 接口和继承有什么区别
  4. 在地址栏中输入url,解释整个过程
  5. 是否每次输入地址都需要查询DNS
  6. 如何决定DNS解析的IP,比如在美国访问百度和中国访问百度,得到的IP不同
  7. 网页上的资源都是服务器提供的吗?CDN
  8. 单链表每k个节点反转
  9. 有什么问题要问

字节跳动 3月23日 现场 三面 45min

  1. 自我介绍
  2. 做过的项目
  3. Java多线程
  4. 有某一天全部用户的登入和登出时间记录,精确到秒,求峰值的用户数,以及峰值持续的时间。手写了一个线段树,面试官看完,说,做的太复杂了
  5. Java实现单例模式。面试官看完:你是不是很久没有写Java了
  6. 有什么问题要问,只有三面,回去等通知

Hulu 3月25日 电话 一面 1h

  1. 自我介绍
  2. 讲项目
  3. Java垃圾回收
  4. PostgreSQL和MySQL
  5. 微博平台数据库表如何设计,统计单个用户最近一年的微博发布数量,不要求很精确,查询时间尽量短
  6. 求11的n次方,数据较大,可能会溢出
  7. 除了链表的头节点,把剩余的节点反转
  8. 有什么问题想问的

亚马逊 3月29日 现场 一面 55min

面试前,HR先给发了一份Leadership Principle,背了一晚上

  1. 自我介绍
  2. 问项目
  3. 判断是否是镜像二叉树
  4. 已知当天游客访问博物馆的出入记录,求馆内游客数量达到峰值的时间节点(跟头条同一道题)
  5. 附加题:一张白纸,总是从右往左折叠,多次折叠后展开,有的折痕朝上,有的朝下,求n次折叠后所有折痕的朝向
  6. 有什么问题想问

亚马逊 3月29日 现场 二面 40min

  1. 介绍一个印象最深刻的项目
  2. 希望把一个数据库迁移到另一个数据库,但同时App仍在使用,如何做到
  3. 问了很多behavior question
  4. 有什么问题想问,实习生只有两面,回去等通知

Hulu 4月1日 现场 二面 1h

  1. 有input和ref两个数组,input数组中的数字如果在ref数组中出现,就按照ref数组中的顺序排列在最前面,否则按原本顺序排列。最好用Java Sream API实现

  2. 一种数的素因子只可能是3,5,7,把这种数从小到大排序,得到3, 5, 7, 9, 15 ... 求其中第K大的数。https://www.jiuzhang.com/qa/851/

  3. 将数组中每个元素转化为在它之后第一个比它大的元素,如果没有比它大的元素,转化为-1。如[1, 4, 3, 4] -> [4, -1, 4, -1]

Hulu 4月1日 现场 三面 1h

  1. 设计并实现skip list,要求get,insert和delete方法线程安全