一、字节跳动(3.23)
一面
- concurrent hashmap和hashmap区别,concurrent hashmap键值可以为null吗
- synchronized 对静态方法和对实例方法加锁区别;可重入锁 偏向锁;rentrantlock具体实现
- 知道哪几种树,具体实现和应用场景;树怎样保持平衡
- 数据库的引擎,索引实现
- tensorflow分布式底层实现
- 编程题,54张牌(大小为54的数组),随机方式把每一位置为1
二面
- tcp/ip四层结构,websocket处于哪一层,udp应用场景,tcp为什么可靠,音视频用tcp还是udp,tcp发送多次包接收一次还是多次,音视频传输用tcp还是udp,tcp/udp可以同时使用一个端口吗(可以)
- linux指令 虚存,进程间通信,锁和信号量
- 编程题:判断一个数是不是2的n次幂;链表反转;树的层序遍历
三面
- 手撕堆排,找数组中位数
- tcp四次挥手
- linux指令 top详情
- 数据库引擎区别,索引 b+是二叉还是多叉
- 自旋锁
- socket编程
二、阿里ICBU部门
简历评估面(3.20)
- Java 和 Python区别,类型检查
- 多线程 synchronized violate
- 数据库索引 b+树插入更新效率
- 编程:一段话(含中文、字母、数字),统计每个出现的次数,每种类型中按照出现次数降序排列。
一面(3.25)
- nlp怎么做情感分析??
- Spring 特性,ioc和aop,aop的核心概念,动态代理机制,java动态代理
- 设计模式,单例模式的几种实现方式
- 多线程有哪些实现方式,callable和runnable区别
- Jvm堆分区,垃圾回收算法,fullgc触发方式,jvm调优(频繁发生fullgc时怎样调整)
- hashMap底层实现
- 数据库分库分表,具体场景
二面(3.26)
- java集合框架整体介绍,hashMap底层数据结构,put过程;hashtable与concurrentHashmap怎样实现线程安全;
- jvm 垃圾回收算法;
- 红黑树和二叉平衡树分别是什么...
- 知道的排序算法和应用场景
- 数据库隔离级别;左连接;sql找出分数前三名的学生(考虑100分多人的情况)
- tcp三次握手
- spring框架核心,ioc、aop;
- 机器学习算法,介绍CNN,(有/无)监督学习,分类or回归;
三、七牛云(3.25)
笔试
- 实现shuffle算法
- 单链表反转
- tcp为什么要三次握手四次挥手
- static final const 区别
一面
- violate关键字
- 设计模式(单例 为什么要用设计模式)
- 编程:二分查找
二面
- java 语言不是很好的地方
- java垃圾回收,判断哪些需要回收,内存泄露,c中为什么没有垃圾回收机制
- hashmap底层实现
- 编程:字符串去重