Theresa_ level
获赞
175
粉丝
40
关注
36
看过 TA
1848
门头沟学院
2026
Java
IP属地:上海
暂未填写个人简介
私信
关注
2025-05-09 15:35
已编辑
门头沟学院 Java
0 点赞 评论 收藏
分享
2024-08-26 11:08
门头沟学院 Java
JVM、Spring,ES,MQ都没问。自我介绍1. HashMap底层数据结构答:xxx结构。介绍为什么扩容参数是8和64。一定要主动去引导。这里没有引导到自己擅长的Put流程,寻址算法,下次要注意引导。2. 它并发安全吗?不安全那有可能有什么问题?这里回答的不好,现想出来回答的是有可能有ABA问题,比如一个线程修改了数据另一个线程直接给覆盖数据了。查询的答案是这样的:数据覆盖:当多个线程同时尝试修改同一个键对应的值时,后一个线程的操作可能会覆盖前一个线程的结果,导致数据丢失。并发插入时的竞态条件:多个线程可能同时尝试插入相同的键值对,但由于 HashMap 的内部实现中没有对插入操作进行同步控制,可能导致插入操作失败或数据错误。死锁或循环引用:在 HashMap 的早期版本中,如果多个线程同时进行扩容操作(resizing),可能会导致循环引用,导致死锁3.Sychronized和AQS的区别答:这里主要是比较Sychronized和Lock接口的区别。(其实说的有点偏题了)说着说着又说到和ReentrantLock的区别去了。把问题拉到了我擅长的区域。虽然我也不知道到底AQS和Lock接口能不能这样类比过来。解释一下ReentrantLock的特性?答:重入,可中断、公平与非公平、多条件变量Sychronized可重入吗?答可以。说一下Sychronized的底层机制?锁升级了解过吗?答:这里我不太了解Sychronized的底层结构,所以就直接碰运气只回答锁升级,第一个问题糊弄过去了4.CAS的机制是什么?CAS可能出现什么问题?答ABA。这个问题怎么解决?答版本号。5. 了解过JUC吧?说一说线程池的几个参数?答:最大线程数、核心线程数、非核心线程存活单位、非核心线程存活时间、等待队列类型、拒绝策略(少说一个线程工厂)6. 什么时候用到等待队列?线程池假设现在来了一个线程,他的流程是怎么样的?答:先核心线程、再等待队列、再非核心线程直到max线程数、再拒绝策略。7. 拒绝策略有哪些?答:忘了。8. 在线程池中为什么一个线程能反复使用多次?而不是销毁再重新创建?答:不知道。9.计算机网络就只问个三次握手四次挥手。答:xxxxx10.四次挥手区别?为什么挥手是四次?答:中间有一次的ACK和FIN拆开,因为服务器数据可能还没有发送完毕。11.Innodb索引底层结构。和B树区别是什么?查询时间复杂度是多少?12.在每个节点中是怎么寻路的?其实没有听懂问的意思,面试官想表达的是,因为每个节点中的键都有序,所以其实在每个节点中是通过二分查找来进行寻找下一层的路由的。13.事务的四个特性?他们分别是怎么保证的?答:一致性通过其他三个。隔离性MVCC。原子性Undolog。持久性Redolog。14.Redolog也要持久化到磁盘呀,那他为什么就能保证持久性答:因为他只写日志不实际操作,记录很小很快就容易写。具体是什么跟面试官说不知道。15.刚刚说了两种日志,还有binlog是干嘛的?答:全量日志。Redolog不是全量的16.Redis三兄弟。他们的概念和解决办法。布隆过滤器是怎么工作的?一定保证有,一定确定无吗?误判是怎么误判的?算法题:合并两个有序数组ACM模式。3分钟就写完核心代码,但是写不来输入输出。跟面试官提出来,面试官说这个没关系,直接讲思路。平时有刷算法吗?有。
投递百度等公司9个岗位
0 点赞 评论 收藏
分享
2024-08-11 11:41
已编辑
门头沟学院 Java
第一次正式面试,我比面了10次的还不要脸,一直在说不好意思,抠脑壳笑哈哈哈哈,然后又说不好意思聊项目:听说是微服务的,就问为什么要用微服务架构,他的优点和缺点?(答:解耦、灵活、独立部署、但是系统实现和部署会比较复杂)拆分了哪些微服务?(答:订单、商品、首页、搜索、User、、、)你这个项目其实单体也可以解决,你拆分微服务的原则是什么,根据什么拆的?(答:根据功能)各个微服务之间循环依赖怎么解决?讲了半天,没有get到面试官意思。于是给我介绍,可以把服务分成不同层级,只能上级服务调用下级服务,通过这种方式来防止循环依赖。我说我项目中用的MQ进行解耦什么什么的,才发现面试官意思是,问我服务间解耦的方案。然后是问我热度排序怎么实现?zset。zset底层数据结构?我回答跳表。追问:查询时间复杂度是什么?我说ologn。他说其实是O(1)(啊?真的吗)面试官说因为数据结构除跳表,还有hashtable,结合跳表一起实现。然后我就一脸懵逼。追问:那这个时候跳表存在的意义是什么?我说范围查询。他说不对,那普通链表也可以做到呀。然后我就懵了。最后他说正确答案 我忘了。追问:分数相同怎么排序?不知道。面试官说根据字典里的字典序。Spring依赖注入有几种方式?回答:只记得@注解注入和构造器注入。这两者在操作上有什么区别吗?明明依赖注入的时候,我们bean都是采用的private,那spring为什么能注入进去呢?不知道。做题基础不牢的MySQL:student_id,    leason_id,  score  ,class_id1. 查出每个班级英语分数最高的学生2. 查出不挂科的所有学生MySQl写的太捞了,我自己都不好意思继续面了,他跟我说MySQl写不撑展,就跟前端连CSS都不熟练一样,毁灭打击,于是前面的功亏一篑了算法:实现一个 myAtoi(string s) 函数。在main方法的类里,写一个方法用main来调用。结果我方法没有写static。面试官说,那这样main根本调用不了呀。哦哦哦哦哦原来是这样,想钻地。让我写个测试用例12345输入,我还在写system.in什么什么的,跟我说直接调方法输入12345呀。尴尬+++++然后又说为什么不用trim()去除字符串的前导空格,因为我不知道。而且我写出来也不知道这个函数有返回值。感觉面试官说话都说急眼了这辈子都会恨这个函数。算法题主要思路写的算快的,但是处处体现基础确实很不牢固幸亏不要脸不然就不敢面了
查看15道真题和解析
0 点赞 评论 收藏
分享

创作者周榜

更多
关注他的用户也关注了:
牛客网
牛客网在线编程
牛客网题解
牛客企业服务