2020年成功入职字节,尚硅谷Java面试题

#####3.Mysql 索引,B+树(必考嗷同学们!!!)
还有⼀些项⽬中的细节,这些因⼈⽽异,就不放上来了。
提示⼀点就是要在项⽬中介绍⼀些亮眼的地⽅,⽐
如⽤了什么⽜逼的数据结构,架构上有什么特点,并发量⼤⼩还有怎么去 hold 住并发量!
后⾯就是算法题了,⼀共做了两道
#####1. 判断平衡⼆叉树
这道题总体来说并不难,但是⾯试官在中间穿插了垃圾回收的知识,这就很难受
了,具体的就是⼤家要判断⼀下对象在什么时候会回收,可达性分析什么时候对这个对象来说是不
可达的,还有在递归函数中内存如何变化,这个是让我们来对这个函数进⾏执⾏过程的建模,只看
栈帧⼤⼩变化的话,应该有是两个峰值,中间会有抖动的情况)
#####2. ⼆分查找法的变种题
给定 target 和⼀个升序的数组,寻找下⼀个⽐数组⼤的数.这道题也不难,
靠⼤家对⼆分查找法的熟悉程度,当然,这边还有⼀个优化的点,可以看看我的博客找找灵感
完成了之后。

⾯试官让我等⼀会有⼆⾯,⼤概 10 分钟左右吧,休息了⼀会就继续了
##二面
⼆⾯⼀上来就是先让我⾃我介绍,当然还是同样的套路,同样的⾹脆
然后问了我⼀些关于Redis 的问题,
⽐如 zset 的实现(跳表,这个⾼频) ,键的过期策略,持久化等等,
这些在⼤多数 Redis 的介绍中都可以找到,就不细说了!

#####还有⼀些数据结构的问题:
1.⽐如说问了哈希表是什么,给⾯试官详细说了⼀下 java.util.HashMap 是
怎么实现(当然⾥⾯就穿插着红⿊树了,多看看红⿊树是有什么特点之类的)的
2.包括说为什么要⽤链地址法来避免冲突、探测法有哪些?
3.链地址法和探测法的优劣对⽐

后⾯还跟我讨论了很久的项⽬,所以说⼤家的项⽬⼀定要做好,要有亮点的地⽅,在这⾥跟⾯试官讨论了
很多项⽬优化的地⽅,还有什么不⾜,还有什么地⽅可以新增功能等等。
同样不细说了
⼀边讨论的时候劈⾥啪啦敲了很多,应该是对个⼈的⾯试评价⼀类的

后⾯就是字节的传统艺能⼿撕算法了,⼀共做了三道
⼀⼆道是连在⼀起的.给定⼀个规则 S_0 = {1} S_1={1,2,1} S_2 = {1,2,1,3,1,2,1}
S_n = {S_n-1 , n + 1, S_n-1} .
1.第⼀个问题是他们的个数有什么关系(1 3 7 15… 2 的
n 次⽅-1,⽤位运算解决).
2.第⼆个问题是给定数组个数下标 n 和索引 k,让我们求出 S_n(k)所指
的数,假如 S_2(2) = 1 ,我在做的时候没有什么好的思路,如果有的话⼤家可以分享⼀下
3,第三道是下⼀个排列:https://leetcode-cn.com/problems/next-permutation 的题型,不过做
了⼀些修改,数组⼤⼩ 10000<n<100000 ,不能⽤暴⼒法,还有数字是在 1-9 之间会有重复

HR面

⼀些偏职业规划的话题了,实习时间,项⽬经历,实习经历这些。
##总结
基础很重要!
这次准备到的 Redis,Mysql,JVM 原理等等都有问到了,(⽹络这⼀块没问,但是也是要好好
准备的,对于后台来说,⽹络知识不仅仅是⾯试,还是以后⼯作的知识基础)。
当然⾃⼰也有准备不⾜的地⽅:
⽐如 Kafka 等中间件,只会⽤不会原理是万万不⾏的.并且这些基础知识不能只靠背,⾯试官还会融
合在项⽬⾥⾯进⾏串问

其次,问到了不会的不要慌,因为⾯试官是在试探你的技术深度,有可能会针对某⼀个问题,问到你不会为⽌,所以你出现不会的问题是很正常的,⼼态把控住就⾏.
⽆论是做题,还是回答问题的时候,牢记你不是在考试,⽽是在交流,和⾯试官有互动和沟通是很重要的,
你说的⼀些疏漏的地⽅,如果你及时跟⾯试官反馈,还是可以补救⼀下的。

最重要的⼀点字节的⾯试就是算法⼀定要牢固,每⼀轮都会有⼿撕算法的!
这个不⽤想,LeetCode+剑指Offer ⾛起来就对了。
⼼态很重要,算法题不⼀定都是你会的,要有⼀定的⼼理准备,遇到难题可以先冷静分析⼀波。
⽽且写出 Bug free 的代码也是很重要的。
最后祝⼤家在金九银十之际取得自己心仪的 Offer,奥⼒给!
以上分享的是我自己2020年面试字节的一个经历,
#####在此面试前我整理归纳了一些面试学习资料,文中结合我的朋友同学面试美团滴滴这类大厂前的资料及案例
#####可供大家参考,感兴趣的朋友如有需要获取资料文档点击Java学习或者可以关注+转发后台私信我免费获取。

算法

  1. ⼏道常⻅的字符串算法题总结
  2. 最⻓公共前缀
  3. 回⽂串
  4. 两数相加
  5. 翻转链表
  6. 链表中倒数第k个节点
  7. 删除链表的倒数第N个节点
  8. 合并两个排序的链表
  9. 剑指offer部分编程题
  10. 跳台阶问题
  11. 变态跳台阶问题
  12. ⼆维数组查找
  13. 替换空格题⽬描述:
  14. 数值的整数次⽅
  15. 调整数组顺序使奇数位于偶数前⾯
  16. 链表中倒数第k个节点
  17. 反转链表
  18. 合并两个排序的链表
  19. ⽤两个栈实现队列
  20. 栈的压⼊,弹出序列

算法示例答案解析

数据结构

  1. Java 集合框架中的队列 Queue
  2. HashSet 和 TreeSet 底层数据结构
  3. List的常⻅实现类ArrayList 和 LinkedList 源码学习
  4. Map
  5. ⼆叉树
  6. 完全⼆叉树
  7. 满⼆叉树
  8. ⼆叉查找树(BST)

总结

一般像这样的大企业都有好几轮面试,所以自己一定要花点时间去收集整理一下公司的背景,公司的企业文化,俗话说「知己知彼百战不殆」,不要盲目的去面试,还有很多人关心怎么去跟HR谈薪资。

这边给大家一个建议,如果你的理想薪资是30K,你完全可以跟HR谈33~35K,而不是一下子就把自己的底牌暴露了出来,不过肯定不能说的这么直接,比如原来你的公司是25K,你可以跟HR讲原来的薪资是多少,你们这边能给到我的是多少?你说我这边希望可以有一个20%涨薪。

最后再说几句关于招聘平台的,总之,简历投递给公司之前,请确认下这家公司到底咋样,先去百度了解下,别被坑了,每个平台都有一些居心不良的广告党等着你上钩,千万别上当!!!

提供【免费】的Java架构学习资料,学习技术内容包含有:Spring,Dubbo,MyBatis, RPC, 源码分析,高并发、高性能、分布式,性能优化,微服务 高级架构开发等等。

Java全套进阶资料点这里免费领取

还有Java核心知识点+全套架构师学习资料和视频+一线大厂面试宝典+面试简历模板可以领取+阿里美团网易腾讯小米爱奇艺快手哔哩哔哩面试题+Spring源码合集+Java架构实战电子书。
/vip204888/java-p7)**

还有Java核心知识点+全套架构师学习资料和视频+一线大厂面试宝典+面试简历模板可以领取+阿里美团网易腾讯小米爱奇艺快手哔哩哔哩面试题+Spring源码合集+Java架构实战电子书。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值