原文链接:https://blog.csdn.net/qq_38856118/article/details/100521714

提前批次的,有点久远了,师兄帮忙内推的,这里要特别感谢一下师兄,师兄给了我很大的帮助,我刚开始找工作的时候菜的不行,而且缺乏自信,容易紧张,很多会的东西到面试都想不起来,尤其是反转链表这个题,我面字节好像三次都跪在这个题上,不是不会,脑子突然一片空白~。
-----------------------本周下午又开始面试头条了,就先写头条的面经了,许愿offer,许愿sp

一面

一面是两个小哥一起来的,旁边那位老哥我猜是实习生,两位老哥都很好,谈了一会紧张感就消失了。
算法题问了大概2-3道,我记不得了,我面试的时候说了上次面头条toB部门,反转链表没写出来,非常尴尬,老哥就让手写一下反转链表的进阶版,抽象一个参数k,每k个元素进行反转,得到最终的链表(头插法,没进行k次,临时头指针后移)
快速排序和归并排序
tcp三次握手,四次挥手
打开一个网页www.baidu.com的过程
两个人打开网页看到的东西不一样
http协议 对称加密非对称加密
说出一个对称加密和非对称加密的算法
cookie session token
霍夫曼编码(相当之恐怖,hhh面试问这个和红黑树都吓人)因为本科学过,重点说了一下,霍夫曼编码首先要补充0元素,充分利用短码,对L个信源进行n元霍夫曼编码,需要满足 L+(补充的0概率源)= n + (n-1)*k 其中k为整数,同时使相同概率的已编码处在同概率的码字的最前方,可以使得信源的方差尽可能小。
后面就有点跑遍,为了为啥方差尽可能小,如何表示n个元,引导到调幅调频调角了~
一面结束后,小哥让我在字节的在食堂吃饭,我以为字节的食堂要刷他的卡,拒绝了,想想有点后悔,应该吃的,面试持续到下午6点,一天没吃东西。。。。。。

二面

二面面试官长的特别想我在百度实习时候的老大,我差点就问出了是不是有亲戚在,强行忍住了,二面基础题问了一些,类似于上面tcp/udp这些,还有数据库和一些其他的知识。
然后二面问了好多好多算法题
快速排序,
链表反转(说考过了,就没写)
逆波兰表达式求职,只有加减法的那种
最大和子数组
有序链表转二叉树
使用一个数组中的所有数字字符串组成一个最大的数(写了2种解法,逆序之后桶排序,在逆序回来;或者爆力算法使用回溯之后更新最大值)
二叉树的最大路径长度(递归自身左右节点,或者左右子树最大高度加2)
最长回文字串(马拉车算法)
。。。。。。
因为写的太快了,老哥一直问算法题,后来也不敢写太快了,就放慢速度,我到现在还是不知道直接说出最优解,还是慢慢扣出来比较好0.0 直接写出来,可能感觉你刷过题,慢慢扣又会被人感觉没有准备,蓝瘦香菇

三面
三面还是技术面,手写算法题
高原子数组(二分查找的变形)
先序遍历
n叉树的层次遍历
打印二叉树的全部路径,不允许递归0.0
面试计算机网络的知识,我说之前已经面过很多了(后悔不因该说这句话的,)
考了一些操作系统啥的,用户态内核态

四面
当时已经5点左右,一天没吃饭了,就喝了一杯咖啡,感觉快要到极限了,(开始后悔一面结束之后应该曾一波午饭的)
问了几道题,都是简单的题,具体的忘记了
操作系统问了很多
线程进程
同步异步
各种锁
lru cache(没答出来。卡死)
然后要手动实现一个lru cache(完全没了解过这个东西,甚至于他是干什么的都不知道)要求实现一个接口,但是没有告诉我这个东西是什么,有什么功能,让我想一下缓存有啥功能,然后想了很久没有写出来
然后有手写了2个算法题,都ok了
令我比较诧异的操作是,又让我写一个lru cache ,就是刚才没做出来的那个,这个操作我没有看懂,hhh

后来,收到感谢信。。。