复习一周,字节跳动三场技术面 +HR 面,不小心拿了 offer
- http https 区别 
- cookie,session 
- https 握手过程 
- 对称非对称加密算法?哪个效率高? 
- tcp 握手要三次,挥手要几次,为什么 
- 进程和线程,描述一下 
- 进程通信方式 
- 线程同步方式 
- 写个生产者消费者模型,要求多线程环境下 
- 为什么要用 synchronized?原理?效率? 
算法:
- 二叉树,打印所有根结点到叶节点路径和为 k 的路径。 
反问
先别走,二面面试官马上来
8.15 二面 (40min):
- 自我介绍,为什么投客户端 
- 讲讲在学校的科研项目 
- python 和 java 最大的区别是什么,从你的使用感受说说 
- https(问过了) 
- 数字签名验证过程 
- 从输入一个 url 到页面展示出来的过程 
- tcp 怎么保证可靠性 
- tcp 报文序号怎么分配的 
- utf-8,utf-16 是啥?有啥区别?为什么网络传输大部分用 utf-8? 
- 内核态和用户态 
- 智能指针了解吗(不了解) 
算法比较简单:
- 二叉树,把每个节点的值反转,并输出所有节点和。 
反问
8.20 三面 (60min):
- 评价一下自己前两面的表现? 
- 为什么投客户端,听前面的同学说你觉得客户端简单?(不是不是,balabla) 
- 问项目,问得很细,每一步是怎么实现的,过程,如果不是自己亲手一步一步做绝对会露馅 
- 做项目时遇到了什么困难 
- redis 用来做什么?效率怎么样? 
- 分布式锁都可以怎 
么实现?
- 问点计算机基础吧(终于) 
- java 代码从编写到运行的过程 
- 堆内存通过 gc 自动回收,栈内存怎么回收? 
- 栈溢出是什么?什么场景可能会出现栈溢出? 
- 问点网络吧,syn 攻击了解吗?(以前刷博客看过一眼,只懂个皮毛,不过面试官很好,说如果不了解就不问这方面的内容了。我赶紧说不了解) 
- 那换个问题吧,输入 url 到页面展示的过程?(窃喜,问过了) 
- 然而并没有让我说完,DNS 解析详细问了一下,然后路由转发详细问了一下,说看我这方面挺熟的,没必要再说了。 
本来说要写一道算法,但是估计看时间差不多了,就没让我写,直接反问环节
随便问了点,然后问什么时候有结果?回复说一周以内。
其实准备字节跳动的面试还是需要着重准备基础部分(数据结构、算法、操作系统、计算机网络),另外对做算法题的要求很高,如果在看到题目的时候能直接给出这个题目的最优时空复杂度解法,面试官对你的评价会很高。
如果基础知识比较扎实了,可以看看网络上的面试经验,找找自己不会的知识点,查漏补缺。
也祝大家都能拿到心仪的 offer!
Java 多线程学习手册
这个文档内容的整合有博文、书籍、面试题等,对于一些已经讲解得很简明的技术点进行了一个直接的引用;对于一些没有讲解清楚的知识点,用图片或者代码实践进行展示;对于那些争论较大的技术点,本文档在核对了巨多材料的情况下,从而得出的最佳答案。
该笔记分为三大模块:基础+原理+JDK 工具,共二十个小节;从基础由浅入深,直击底层原理。
 
 计算机网络顶级教程











 
    
评论