#

java

#
5012127次浏览 68457人互动
此刻你想和大家分享什么
热门 最新
10-21 16:53
门头沟学院 Java
面试40+总结下面试手撕的题目
本篇为本人实习+秋招面试被考到的手撕算法题和编码题总结首先是算法题:1. 算法题部分,有很多题是非常高频的,仅仅从我个人的面试体验就能看出来,最为突出的就是LRU,到了最后我已经可以在8分钟以内写完一次LRU了2. hot100在其中的比例为7/20,但是如果算上重复的,那就超过50%了;另外还会有一些题目是从hot100的做题思想就能拓展出去的3. 无他,唯手熟尔需要编码的场景题通常涉及几个方面的思想:外部多路归并排序;位运算;拒绝采样;大模拟;特殊数据结构有一说一在面试后,我的这方面思想也得到了很大的提升⭐算法题(除去重复题目,共20道):➡️ 打家劫舍(力扣No.198,hot100,简单)➡️ 树的路径总和 ×2(力扣No.112,简单)➡️ LRU缓存 ×5(力扣No.146,hot100,中等)➡️ 最小栈 (力扣No.155,hot100,中等)➡️ 重排链表 ×2(力扣No.143,中等)➡️ 螺旋矩阵II(力扣No.59,中等)➡️ 最大子数组和(力扣No.53,中等)➡️ 合并区间 ×2(力扣No.56,hot100,中等)➡️ 岛屿数量 ×2(力扣No.200,中等)➡️ 二叉树的层序遍历 ×2(力扣No.102,hot100,中等)➡️ 寻找峰值(力扣No.162,中等)➡️ 翻转链表II(力扣No.92,中等)➡️ 快排 ×2(中等)➡️ 数组中第k大的数,要求堆排序思想写 ×2次(力扣No.215,hot100,中等)➡️ 字符串中最长无重复字符的子串(力扣No.3,hot100,中等)➡️ 分发糖果(力扣No.135,困难)➡️ 小于n的最大数(字节高频题,非力扣,困难)➡️ 寻找旋转排序数组中的最小值(力扣No.153,中等)➡️ 整数反转(No.7,中等)➡️ n个六面的骰子,扔一次之后和为k的概率是多少(中等)⭐场景模拟题:➡️ 两个线程交替输出1-100➡️ 两个复杂字典,如何将字典1通过一些规定好的操作变成字典2➡️ 长为8位的无重复大量数据,如何从小到大输出?如果内存不够一次全部读入呢?➡️ 如果有10亿个32位的整数,如何找出那些只出现过一次的数?内存有限,无法一次性读入全部数据,另外时间复杂度越低越好⭐特殊题:➡️ 实现一个无锁的线程安全的循环队列 ×2,一次Java一次Go➡️ 给定一个数组,如何用最小的比较次数获得最大最小值➡️ 有一个rand函数,生成1的概率是p,0的概率是1-p,那么如何用它生成一个rand2(),使得生成1和0的概率都是0.5➡️ 用rand7()函数构造函数rand10()➡️ 带超时时间的LRU缓存➡️ 实现一个单例模式加油💪🏻祝大家都有自己满意的offer!
点赞 评论 收藏
分享
09-24 17:16
门头沟学院 Java
网易云音乐java一面
场景题盛宴 主包玉玉了1. 为了支撑高QPS场景,有没有什么手段去支撑2. 那你这个QPS这么高,是直接读数据库吗?有什么方法解决这种QPS的方案3. 是否用到多级缓存或者本地缓存4. 用Redis去扛这个量的时候是否有一些风险点,它和DB组合使用的时候有哪些风险点5. 如何去设计我的过期时间避免穿透的问题6. Redis热点key,有什么方法去处理7. 你提到了加锁,什么时候加锁,什么时候释放锁,比如A、B两个请求抢,我怎么去设计?用什么命令去抢锁,然后怎么去释放8. 那我怎么保证这个锁一定会释放9. Redis的热点Key,如果我拆分了5 6个子key,那我一些热点信息去更新,我怎么保证这些key数据一致10. 我看你实习用到了MQ,我现在有个场景,比如我有200万条数据,我要通过MQ发送,然后去消费,我怎么能最快去把这200万条消费掉11. 我一个topic创建了16个partition,比如我有200个机器去消费这个东西,它是怎么一个消费机制12. 我看你项目用到了POI处理报表,你有考虑过技术选型吗?为什么不用其他的13. POI的风险点有哪些呢?14. ThreadLocal的原理是什么,什么场景下用TreadLocal15. ThreadLocal使用的时候要注意什么,会出现什么问题16. 一般在什么时候删除ThreadLocal呢?17. 你刚才说了Redis做一些缓存,怎么防止击穿风险18. 对于Redis的大Key,有哪些风险点?19. 布隆过滤器使用过程中有什么需要注意的点20. 布隆过滤器,比如有个key没命中布隆过滤器,那它这个key一定不存在吗,还是可能不存在?21. 有没有什么优化手段,去设计这个布隆过滤器,让它有更少的误判。22. MySql写热点数据的问题,怎么设计23. 直播间送礼,用户给主播刷礼物,从整个链路,包括用户点击送礼,想一下有没有什么优化手段,或者怎么设计这个场景
点赞 评论 收藏
分享
后端开发,目前有几个意向
投票
屋顶的闪闪星光:5、6不建议去,边缘部门、边缘业务 快手、滴滴相比阿里、美团,档位要低一些,基建、团队管理、人才密集度、履历背书上也稍弱一些。 饿了么、美团放一起,看待遇,差别不大的话就去饿了么,原因如下: 1、核心业务。 2、传统Java工程方面,阿里是业界第一。 3、阿里盘子更大,部门多、业务多元,后面混得不如意了,活水空间更大,不需要跳槽,内部动一动就可以。 再有问题私信交流
投递快手等公司10个岗位
点赞 评论 收藏
分享
头像
2024-09-10 11:19
已编辑
山西农业大学 Java
Java已读不回?
如何准备简历?1、简历的基础结构我是谁【基础信息】--我会什么【技术栈】--我做了什么【项目】--个人评价2、基础信息姓名--年龄--学校--java工作年限--手机号--邮箱---希望工作地点--岗位【java开发/java工程师】3、技术栈基础--数据库--Nosql--中间件--框架--运维工具/插件--开发工具/插件4、项目项目背景--项目需求--整体流程--技术栈--主要功能介绍5、个人评价需要体现出有解决问题的思路和能力如何准备Java面试?1、Java面试本身是二人转,简历就是话本,不要让你的面试变成独奏2、八股文是围绕Java核心技能的基础知识,并不是去死记硬背,是因为你会了技术,然后通过八股文进行书面回答3、通过项目引导面试官提问,通过问题的答案体现出自身的沉淀和积累4、面试一定要提前1-2周的时间去准备,不要抱着每次面试都会过的想法5、将每一次面试都当做练手,大胆的去表达和提问6、回答问题一定要有条理性,不要东拉西扯如何准备Java项目?1、技术本身是没有价值的,因为有了业务,技术才有了价值2、项目的功能不可能凭空产生,是因为有背景和需求,才有了功能的设计3、项目中的资源不可能凭空产生,也不可能凭空消失,资源一定是经过完整的业务流程被消耗了,所以项目中的资源需要做到数据闭环4、不要为了加上某些看起来牛逼的技术/方案,就硬塞到项目中,这样看上去项目功能的实现方案只能体现技术的实现过程,而不能体现业务是否需要这个方案,这个方案是否是最优解;而技术的实现方案,只需要找点资料就可以完成5、在面试中,我们需要通过项目让面试官知道我们的积累和沉淀,以及解决问题的思路一个好的Java项目应该是什么样子?有人说应该有很多技术栈也有人说应该有分布式锁,分布式事务,各种中间件穿插还有人在项目中大数据量,分库分表;QPS,TPS整一大堆指标; 然后解决内存溢出问题,各种优化,各种线上问题解决霍,这是做项目,还是写bug呀,一大堆bug发布,然后到线上一个一个改?-------不能说没脑子吧,但确实不多总结:技术本身是没有价值的,是因为有了业务,技术才有了价值; 业务达到的效果并不是体现技术的价值,而是因为业务需要,刚好有技术相对贴合, 根据场景合理使用解决方案  Java专栏介绍-牛客网 https://www.nowcoder.com/issue/tutorial?zhuanlanId=mPZY5M&uuid=bff9a310ece749ea8480f0bf15636882
志哥的Java:查看图片
点赞 评论 收藏
分享
10-22 12:03
山东大学 Java
985本连面试资格都没有吗
程序员小白条:26届一般都得有实习,项目可以随便写的,如果不是开源社区的项目,随便包装,技术栈也是一样,所以本质应该找学历厂,多投投央国企和银行,技术要求稍微低一点的,或者国企控股那种,纯互联网一般都得要干活
点赞 评论 收藏
分享
玩命加载中
牛客网
牛客网在线编程
牛客网题解
牛客企业服务