我惊呆了,本以为简历都过不了,没想到试水字节成功,123+HR面直接拿到意向书

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024b (备注Java)
img

正文

  • 那就换个题目吧,看看下面这个题目,找数组出现次数最多的TOP N,回头听室友说,好像又是leetcode原题,泪目,算法能力太弱,没怎么刷题。

给定一个数组,例如 [1,1,2,2,2,3,3,3,3]这样的,里面的数组不一定连续并且有序,假设我输入 2,这个2表示出现次数最高的两个

那么你需要给我返回 2,3

然后我最开始的思路就是,通过hash存储出现的次数,然后key就是数组中出现的值。最后再对hash中的次数进行排序,最后得到top N,因为时间复杂度是O(N^2),问有没有优化思路,能否优化到O(N),想了半天没有想出来,没有充分运用以及构建好的hash表

后面面试官给讲了一下思路。从数组长度向下遍历进行查找

  • 反问环节,问了问面试的表现,被告知算法能力比较薄弱,以为就此凉凉。。。然后一面说这边可以让你进入下一环节,这边大概需要等5到10分钟左右

第二面

================================================================

二面考察的是技术深度面试,面试时间大约50分钟左右

  • 自我介绍

  • 博客已经开源了么,用的什么开源协议,博客的用户多么?

  • 看你博客中用到了Solr和ElasticSearch,谈谈它们的原理,以及倒排索引?

  • 对于Solr或者ES里面用到的一些中文分词器有了解过么?

  • 谈谈那些技术栈,你比较熟悉的是那些,mysql 和redis?

  • 聊聊MySQL的底层索引结构,InnoDB里面的B+Tree?

  • B Tree 和 B+ Tree的区别

  • 聊聊MySQL索引的发展过程?是一来就是B+Tree的么?从 没有索引、hash、二叉排序树、AVL树、B树、B+树 聊。

  • 谈谈MySQL里面的事务,说说什么是事务?

  • MySQL里面有那些事务级别,并且不同的事务级别会出现什么问题?

  • 谈谈可重复读和幻读的区别?

  • MySQL中如果使用like进行模糊匹配的时候,是否会使用索引?一定不会用么?(索引这块了解的太少了,二面结束后,回去恶补了一下)

  • 谈谈Redis吧,在你项目中的具体使用?

  • 谈谈Redis如何实现分布式锁?

  • 蘑菇博客是否存在缓存不一致的情况,你是如何解决的?

  • 谈谈Redis中缓存穿透的问题,以及解决的方法?

  • 还有其它解决缓存穿透的方法么?布隆过滤器有了解过么?

  • Redis中大面积的缓存失效,然后请求全部打到数据库,有什么解决方法?

  • 如果出现一些热点数据,比如明星之间的新闻,造成大量的吃瓜用户涌入后台,但是服务器还没有缓存对应的数据,这样可能造成数据库宕机,如何避免这样的情况?

  • 聊聊 JVM的组成结构?

  • 谈谈垃圾收集原理?以及垃圾收集算法

  • 复制算法 和 标记整理算法?

  • 为什么不在新生代使用标记整理算法?或者在老年代使用复制算法?

  • 有了解过Volatile么?谈谈你对Volatile的理解

  • Volatile如何保证可见性的?以及如何实现可见性的机制。

  • 如果大量的使用Volatile存在什么问题?

  • 谈谈操作系统的线程,以及它的状态

  • 线程和进程的区别?

  • 为什么要提出多线程应用,而不是多进程应用呢?

  • Linux你平时都有用到什么命令呢?

  • 如果我需要查看端口号或者进程号,你会使用什么命令?

  • 谈谈你做的另外一个项目吧?稍微介绍一下

  • 来吧,写个题目试试

链表的两两翻转 # 给定链表: 1->2->3->4->5->6->7 # 返回结果: 2->1->4->3->6->5->7

  • 毕业时间是什么时候?现在面试的是实习岗位么?

  • 反问环节:追问面试表现?告知 Redis这块掌握的还可以,但是MySQL这块显得不足。问后续的安排。

第三面

================================================================

应该是Leader面,面试时间大概50分钟

  • 自我介绍

  • 好奇一下,用码云的人应该不多吧,为什么没有用Github?

  • 你英文水平怎么样?

  • 聊聊开源项目吧?我看这项目已经有800多赞了,你在这开源项目主要做了什么工作?

  • 我们找些点来聊聊吧?先从ES和Solr开始,你们这两个都有在用么?

  • SQL的方式实现搜索,你是怎么做的呢?

  • 使用like匹配的时候,会不会查询非常慢呢?

  • ES和Solr的底层都用了lunce,谈谈你对lunce的理解?

  • lunce里面也有用到分词器,比如一些新的词 “新冠肺炎” ,它能不能做到很好的划分呢?

  • 除了人为的维护词库,来解决最新词语的分割,你还有知道其它什么更好的方法么?

  • 你有了解过其它什么开源的分词库么?

  • 谈谈字典树?

  • Solr 和 ES底层都用了Lunce,那他们两者有什么区别呢?

  • Solr所谓的集群环境 和 ES所谓的分布式环境,它们之间有什么区别呢?

  • 上面你有提到微服务,你有了解过微服务是个什么样的理念么?

  • 你现在的微服务,也是打包成多个jar包,部署在一个服务器上,如果服务器出现问题了,也会造成服务不可用,有没有好的解决方法呢?

  • 聊聊服务的注册与发现?

  • 服务的注册和发现,其实依赖于一个注册中心的概念,会不会出现注册中心挂掉,而导致整个服务不可用,有没有什么好的解决方法呢?

  • 有了解过Zookeeper整个的选举过程么?

  • 谈谈Zookeeper的分布式一致性协议?

  • 聊聊索引,我给你写个表,看看下面的查询语句,走了那些索引?

create table ‘tb’ (

id int,

name varchar(64),

status int,

createtime timestamp,

PRIMARY KEY (id)

)

– 创建了三个普通索引

create index index_name on table(‘name’)

create index index_status on table(‘status’)

create index index_createtime on table(‘createtime’)

– 给定SQL语句,判断下面查询会用到几个索引

select * from tb where status = 1 and name = “zhangsan”

  • 上述SQL用到了几个索引?分别是那几个?

  • 有了解过InnoDB底层的索引结构么?

  • 通过两个索引查询出来的结果,会进行什么样的操作?交集,并集?

  • 如果你在MySQL中遇到一些慢查询,有什么解决方法么?

  • 谈谈explain?执行的explain后,出现的那些字段,能够帮助我们呢?

  • 我看你的博客里面,关于Redis还有好几篇文章,我们可以聊一聊你对Redis的理解?

  • 为什么Redis能够保持这么高的并发响应?

  • 有了解过IO多路复用技术是个什么样的原理

  • 通过一个线程,同时连接多个线程不会存在多个线程切换么?(感觉进坑了。。)

  • 当你通过jedis进行连接redis的时候,已经和一个进程连接了 ,redis还能够和其它的进程进行通信么?

  • Redis每秒能够处理处理十万请求,如果按照你上面说的,那说明它每次交互只在 1/十万 秒内完成?

  • 有了解过Redis的源码么?

  • MySQL用了B+Tree,Redis中的SortSet内部用了跳跃表,他们之间有什么差别?为什么MySQL不用跳跃表,或者是Redis不用B+Tree呢?

  • 感觉自己编码功底怎么样?那我们先聊聊操作系统的知识再给你一道题吧。在操作系统中,有高速缓存,主存,虚拟内存,外存,有知道它们之间有什么样的关系,以及它们的作用是啥?

  • 对它们来说,肯定会存在一个问题,就是当我们的主存满了,或者虚存满了,那么需要存在一个换页操作,你知道有那些换页算法么?

  • 我们来聊聊LRU?叫你手写一个LRU算法谈谈你的思路?

  • 用链表的方式实现,时间复杂度是O(N),有没有什么方式能够让它是O(1)的时间复杂度呢?

  • OK,思路还可以,那你手写一个LRU算法吧?(双向链表 + Hash?)

  • 反问环节:问了下组织架构,以及python和go在项目中的使用。然后问了下面试的表现,答:代码写的不算好吧,LRU写成这样我觉得是不太合适的。(心碎的声音,感觉到凉凉的气息…),结束后以为面试已经结束,后面在准备关页面的时候,面试官说等一下,还有同学和我聊?

HR面

================================================================

花10来分钟做个简单的沟通

  • 自我介绍

  • 考研的时候为什么选择的是这个学校呢?

  • 回顾一下,上大学到现在这段时间内,让自己最有挫败感的事情是什么呢?

  • 有哪些方面需要在改进的么?

  • 对于以后参加的工作,你主要会看重哪些方面呢?

  • 同学这块,大家都有在投递字节这边的岗位么?

  • 反问环节:关于面试结果,告知,这边只是做简单的了解,面试结果大约会在一周左右出来,到时候会有邮件或者电话通知。关于面试的结果,需要综合前面的几个面试官进行综合评测,才能决定是否录取。

可以蓝色传送门

总结+面试前的准备(供大家参考学习)

===============================================================================

可以蓝色传送门

给大家个建议,面试官如果愿意和你聊组里业务,一定要把握机会好好聊,最好能提出让面试官眼前一亮的问题,直指业务核心。代码谁都会写,基础知识网上都能查到,但是对产品的理解和新的想法不是谁都有的

(1)第一步,面试前整理一个完整知识架构大纲

===================================================================================

渣硕试水字节跳动,本以为简历都过不了,123+HR面直接拿到意向书

我将架构体系分为五大模块:并发编程、JVM性能调优、Spring开源框架源码解读、缓存数据库、分布式架构,微服务架构

(2)第二步,通过大纲对面试中的高频技术逐个攻克

=====================================================================================

1,并发编程(手写笔记:并发编程+并发编程_原理+并发编程_应用+并发编程_模式)

  • 并发编程共享模型篇

  • 并发编程_模式篇

  • 并发编程_应用篇

  • 并发编程_原理篇

并发编程共享模型篇

并发编程_模式篇

并发编程_应用篇

并发编程_原理篇

2,性能调优(Java性能调优实战:Java编程性能调优+JVM性能优化+Mysql调优笔记)

  • JVM性能优化

最后

分享一套我整理的面试干货,这份文档结合了我多年的面试官经验,站在面试官的角度来告诉你,面试官提的那些问题他最想听到你给他的回答是什么,分享出来帮助那些对前途感到迷茫的朋友。

面试经验技巧篇
  • 经验技巧1 如何巧妙地回答面试官的问题
  • 经验技巧2 如何回答技术性的问题
  • 经验技巧3 如何回答非技术性问题
  • 经验技巧4 如何回答快速估算类问题
  • 经验技巧5 如何回答算法设计问题
  • 经验技巧6 如何回答系统设计题
  • 经验技巧7 如何解决求职中的时间冲突问题
  • 经验技巧8 如果面试问题曾经遇见过,是否要告知面试官
  • 经验技巧9 在被企业拒绝后是否可以再申请
  • 经验技巧10 如何应对自己不会回答的问题
  • 经验技巧11 如何应对面试官的“激将法”语言
  • 经验技巧12 如何处理与面试官持不同观点这个问题
  • 经验技巧13 什么是职场暗语

面试真题篇
  • 真题详解1 某知名互联网下载服务提供商软件工程师笔试题
  • 真题详解2 某知名社交平台软件工程师笔试题
  • 真题详解3 某知名安全软件服务提供商软件工程师笔试题
  • 真题详解4 某知名互联网金融企业软件工程师笔试题
  • 真题详解5 某知名搜索引擎提供商软件工程师笔试题
  • 真题详解6 某初创公司软件工程师笔试题
  • 真题详解7 某知名游戏软件开发公司软件工程师笔试题
  • 真题详解8 某知名电子商务公司软件工程师笔试题
  • 真题详解9 某顶级生活消费类网站软件工程师笔试题
  • 真题详解10 某知名门户网站软件工程师笔试题
  • 真题详解11 某知名互联网金融企业软件工程师笔试题
  • 真题详解12 国内某知名网络设备提供商软件工程师笔试题
  • 真题详解13 国内某顶级手机制造商软件工程师笔试题
  • 真题详解14 某顶级大数据综合服务提供商软件工程师笔试题
  • 真题详解15 某著名社交类上市公司软件工程师笔试题
  • 真题详解16 某知名互联网公司软件工程师笔试题
  • 真题详解17 某知名网络安全公司校园招聘技术类笔试题
  • 真题详解18 某知名互联网游戏公司校园招聘运维开发岗笔试题

资料整理不易,点个关注再走吧

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注Java)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
详解15 某著名社交类上市公司软件工程师笔试题

  • 真题详解16 某知名互联网公司软件工程师笔试题
  • 真题详解17 某知名网络安全公司校园招聘技术类笔试题
  • 真题详解18 某知名互联网游戏公司校园招聘运维开发岗笔试题

[外链图片转存中…(img-SIUlJuQI-1713131340374)]

资料整理不易,点个关注再走吧

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注Java)
[外链图片转存中…(img-3jx6rgzw-1713131340374)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值