字节跳动 成都 后端123面面经(已收到意向书)
今天收到意向书,回馈牛友,毕竟自己也看了不少面经。
回忆春招面试惨不忍睹:
- 腾讯提前批(后端开发)-三面挂
- 腾讯提前批(运营开发-被捞起来)-两面挂
- 阿里-支付宝-四面(三技术+一HR)-offer报批挂
- 头条 - 一面挂
- cvte - offer
https://github.com/1510460325/Notes/blob/master/README.md#%E6%98%A5%E6%8B%9B%E9%9D%A2%E7%BB%8F
春招投了很多公司,就四家公司给面试机会,最后毫不考虑选择cvte(也是cvte选择我吧 哈哈哈~)
春招投了很多公司,就四家公司给面试机会,最后毫不考虑选择cvte(也是cvte选择我吧 哈哈哈~)
最近也就是头铁,秋招提前批再次投成都字节跳动,也是缘分吧,最没希望中的居然也中了,以后得java转go了。三面都是视频面试,因为每天上班7点过下班,只能约晚上面试,所以每周约一面,直到昨晚三面,今中午给意向书,HR加微信说先给意向书,以后谈薪资的时候再聊(也就是没有HR面试),上面经:
做了笔试,四道题,碰了三道题,但是加起来100多,每道题都过30-40。
一面7-12:以为笔试没机会,所以就没准备,收到面试通知马上准备,但是约到第三天,所以没准备好,春招的基础有些模糊,半知半解了,但都回答了。
- https 讲下,为什么要双方确定一个随机文本当密钥,我说怕中间有人抓包,拿到客户端发的参数,然后问为什么不都用公钥加密呢?我想也是哈,中间反正也解不开,但是没想到客户端解不开服务端的信息,脑子卡克了。
- fork()函数讲下,以前在做OJ判题的时候涉及到过,结合项目讲了下。
- 线程池种类,***线程池讲下,线程无限制增长吗?
- 数据库索引,B+树和HASH中为什么用B+树,好处是啥(这个只把两个结构说了,范围查询,排序快的好处居然没想到)
- 复合索引的结构,最左匹配原理(abc查询问题)
- 算法01背包(无限物品): 有商品(200 150 350),你只有N块钱,但是不能找钱,你怎么买最不亏,也就是买的多。三层for循环A了,然后问我优化(心想这个是最简模板,假装思考了下说没了)。然后目瞪口呆的看他秀了一下:优化一:商品200+150=350,完全可以抛开一个物品,复杂度减到2/3 优化二:都是50的差距,没必要1块1块的减少,又可以减很多复杂度。我去这太坑爹了吧,这个算法题,真的是服
- java的static讲下,然后有6种用法,我说了4种,后来网上搜也只有五种呀
- 类加载机制,没步流程干嘛的都说一遍
- 类方法,代码,静态变量,实例,实例变量分别存到哪里
- JVM怎么表示一个对象
- GC三个算法,分代收集讲下
- https握手流程(一面之后当然复习了,回答得巴巴适适)
- http格式
- http1.0 和 2.0
- 保持长连接的是那个字段(keep-alive)
- fork()函数讲下,又结合项目来了一次
- 线程调度算法,linux采用哪种
- 进程线程区别,进程通信
- 数据库聚簇索引,和非聚簇索引的区别
- 内连接,外(左右)链接,全连接的区别
- join on 后and条件和where后加and条件区别,这个在实习项目中恰好遇到过,也是回答的巴巴适适
- 索引结构(B+树)讲下,这次没问HASH的区别,但是复习过,当然得细细讲下啦
- 算法题:字符串转Int,如果越界就返回0(这应该是头条的史上最低的题目了吧,恰巧被我碰到了,开心)
- 场景题目:设计一个短域名服务:短信存不了太长网站,需要弄成短域名,你该如何设计一个服务,可以为全国的网址服务。我说的将所有网址存数据库,用hashcode来当短域名,如果冲突就拼接随机数,表大就分表,当时忘记说再加缓存了,笨
- http格式
- 3次握手四次挥手
- 数据库的隔离级别
- 索引,复合索引结构
- sql题,写了个连表查询外加模糊查询
- 算法:镜像二叉树
- 算法:将List转成tree:(当前节点id,节点名字,父节点id),(当前节点id,节点名字,父节点id),(当前节点id,节点名字,父节点id)=》转成一个树,说自己定义数据结构,设计用例,要能编译运行,我用hashmap存,然后写到差不多了他说不用写了
- 暑假你为什么一面就挂了?(我其实也觉得有点不甘心)可能一面算法题没运行起来,一面要求的是实现泛型的排序链表,什么都写好了,就是忘了Comparable接口怎么写,始终编译不过,面试官可能就失望了,所以挂了
7-24中午HR加微信,直接给意向书,具体offer以后讲,查收就好,然后确认了下,一定能进,不会有闪失的,然后我觉得此后的实习不会怎么慌了,哈哈哈哈,朋友们 你们也加油~
#字节跳动##秋招##面经##提前批##Java工程师#