字节面试比较注重基础,包括在线写题,数据结构,Java基础,JVM基础,操作系统等;以下包括3面。
字节面试是一天内走完所有技术面试流程,每一面结束后如果通过则15min左右就开始下一轮面试,全部为视频面试。
字节一面
- 项目:介绍项目
- Java:深拷贝/浅拷贝,怎么实现深-浅拷贝,CopyonWrite;Java内存(分配->回收的详细过程)
- 网络:TCP挥手,第三次不挥手会怎么样;HTTPs加密的解释,对称/非对称加密
- 算法:数组A,数组B,计算A-B;0-n之间所有质数(可以先求所有合数)
字节二面
- Java:线程同步问题(为什么需要同步&怎么实现同步)
- 设计模式:单例模式(静态内部类);其他设计模式简介
- 数据结构:排序算法,归并/快排(实现原理/平均复杂度/能否提前结束/谁性能更优),
堆排(怎么实现调整堆结构/k个最大的数); - 算法题:给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组
字节三面
- 自我介绍:学过的专业课程;看过哪些计算机专业书
- 操作系统:内存分配区域(Java层面回答,对象引用在堆和栈都有么?函数内部new的对象存放在哪?);用户态/内核态;中断是什么
- 网络:计算机网络有哪几层,分别对应什么协议;IP/TCP传输的都是什么数据;DNS是什么,有什么作用
百度
百度是现场面试,一共三面没有HR面,第三面是总监面,兼顾技术面与非技术面试,百度的面试官都比较友好,一面技术问的比较细,二面重项目,三面是聊天居多。
从百度开始就没有拍照片记录了,经历前面几次面试后,心境淡定了很多
百度一面
- 项目:项目介绍;项目中的编码规范
- Android:Android四大组件安全性;Activity启动模式;IntentFilter匹配规则,action和category区别;Handler阻塞为什么不卡死;事件分发机制,onTouchEvent返回false处理流程, dispatchTouchEvent返回