头条二面

二轮技术面,17:00~20:25,晚饭时间hr 小姐姐还特贴心的带我体验了一把传说中的头条餐厅,不超过半小时

  1. 聊项目,画项目架构图,画一个用户从发起请求 到接收到响应 中间经过哪些服务 每个服务做什么事情 的流程图
  2. 讲项目中的难点、挑战,你是如何解决的
  3. redis 中有几种类型 & 各自底层怎么实现的 & 项目中哪个地方用了什么类型,怎么使用的
  4. redis如何实现分布式锁,zk如何实现分布式锁,两者的区别。如果service还没执行完,分布式锁在redis中已经过期了,怎么解决这种问题
  5. synchronized底层实现,加在方法上和加在同步代码块中编译后的区别、类锁、对象锁
  6. 锁升级的过程
  7. java运行时区域 及 各个区域的作用、对GC的了解、java内存模型 及 为什么要这么设计
  8. 对索引的理解,组合索引,索引的最佳实践
  9. countDownLatch用过没有,在项目中如何使用的,对aqs 的了解
  10. 写生产者消费者问题,考虑高并发的情况,可以使用Java 类库,白纸写代码
  11. 如下图所示

  1. 设计一个发号器,考虑集群和高并发的情况,要求发号器生成的id是递增趋势,通过id可以区分出来是今天生成的id还是昨天生成的id,但是生成的id中不能直接带有日期,要具有一定的混淆功能,白纸写代码
  2. 一个二位数组,每个元素都可以往上下左右四个方向走,寻找最长递增路径。如下图所示,最长递增路径即红色字体路径。白纸写代码。

美团四面

电话面试(40分钟)+现场三轮技术面试(3.5小时)+hrbp面试(30分钟)

  1. 数据库和缓存的一致性问题。先更新数据库,再更新缓存,若更新完数据库了,还没有更新缓存,此时有请求过来了,访问到了缓存中的数据,怎么办?
  2. 聚簇索引/非聚簇索引,mysql索引底层实现,为什么不用B-tree,为什么不用hash,叶子结点存放的是数据还是指向数据的内存地址,使用索引需要注意的几个地方
  3. mysql默认的事务隔离级别,mvcc,rr怎么实现的,rc如何实现的
  4. mysql间隙锁有没有了解,死锁有没有了解,写一段会造成死锁的sql语句,死锁发生了如何解决,mysql有没有提供什么机制去解决死锁
  5. 谈下对GC的了解,何为垃圾,有哪些GC算法,有哪些垃圾回收器,cms和g1的区别,emm,还有一个直击灵魂的问题,看过cms的源码吗,笑cry
  6. 有没有排查过线上oom的问题,如何排查的
  7. 有没有使用过jvm自带的工具,如何使用的
  8. 假设有下图所示的一个full gc 的图,纵向是内存使用情况,横向是时间,你如何排查这个full gc的问题,怎么去解决你说出来的这些问题。

  1. 说说对java中集合类的理解,项目中用过哪些,哪个地方用的,如何使用的
  2. 对CAS的理解,CAS带来的问题,如何解决这些问题
  3. volatile底层、synchronized底层、锁升级的过程、MESI
  4. ehcache支持哪些缓存
  5. juc有研究没有,讲一讲
  6. 聊项目,画项目架构图,画一个用户从发起请求 到接收到响应 中间经过哪些服务 每个服务做什么事情 的流程图
  7. 讲项目中的难点、挑战,如何解决的,项目这一块会问的特别细
  8. 如何保证RocketMQ 消息的顺序性,如何解决重复消费问题
  9. 项目中如何保证接口的幂等操作
  10. 讲一讲对redis 的了解,项目中如何使用的,哪个地方使用的,为什么要使用
  11. 哨兵机制、redis两种备份方式的区别,项目中用的哪种,为什么
  12. 讲一讲对分布式锁的了解
  13. 项目中系统监控怎么做的
  14. 如何理解Spring中的AOP 和 IOC,以及DI,读过Spring源码没有
  15. 读过MyBatis源码没有
  16. 说一个你了解最多的框架,说出你的理解
  17. 如何理解分布式事务,为什么会出现这个问题,如何去解决,了解哪些分布式事务中间件
  18. 聊一聊对分库分表的理解
  19. hystrix功能 & 在项目中怎么使用的 & hystrix 怎么检测断路器是否要开启/关闭 & hystrix 实现原理,除hystrix之外的其他熔断限流中间件有了解没有,了解多少说多少
  20. dubbo有了解没有
  21. 怎么理解java 中和 mysql 中的乐观锁、悲观锁
  22. 一致性hash

京东

电话面试(30分钟)+现场两轮技术面试(1小时40分钟),面完12:50,说让我先回来,后续hr 电话和我联系,一周后一面的面试官问我还考虑京东吗,对不起,已经不考虑了,希望以后有机会再合作

  1. 一个final修饰的属性,定义的时候没有初始化,在无参构造函数中初始化,可以吗,为什么
  2. 说说对java中集合类的理解,项目中用过哪些,哪个地方用的,如何使用的,为什么不用其他的集合类
  3. hashMap,concurrentHashMap底层实现,
  4. list删除是怎么实现的,遍历的时候可以删除吗,为什么
  5. redis中有哪些数据结构,了解过其底层怎么实现的吗,和java中相似的数据结构的对比
  6. redis是单线程的还是多线程的,为什么这么快
  7. redis hash中某个key过大,变为String类型的大key,怎么处理,使用中如何避免出现这种问题
  8. 设计模式在项目中哪个地方用到了,怎么使用的,能不能画一个你熟悉的设计模式的UML图,手写单例模式,手写静态内部类实现的单例模式
  9. 讲一讲mysql索引,实际工作中,哪些场景用了b+tree索引,哪些场景用了hash索引
  10. explain 可以看到哪些信息,什么信息说明什么,explain的结果列讲一下
  11. Spring源码看过没有,会多少讲多少
  12. MyBatis源码看过没有,会多少讲多少
  13. cas,cas的缺点,如何解决
  14. aqs,countDownLatch如何实现
  15. 线程池如何实现,核心线程数和最大线程数设置成多少,为什么这么设置,项目中哪个地方使用了线程池,使用时需要注意什么
  16. mysql事务隔离级别,幻读,脏读,项目中用什么事务隔离级别,为什么
  17. volatile底层原理、synchronized实现机制,
  18. 对XA、TCC的理解,了解哪些分布式事务框架,有什么缺点
  19. feign 和 dubbo,了解多少说多少
  20. eureka 和 zookeeper,了解多少说多少
  21. hystrix 和 sentinel,了解多少说多少
  22. Spring cloud alibaba,了解多少说多少
  23. 对分库分表、读写分离的了解,了解多少说多少
  24. 画一下java 线程几个状态 及 状态之间互相转换的图
  25. 聊项目,画项目架构图,画一个用户从发起请求 到接收到响应 中间经过哪些服务 每个服务做什么事情 的流程图,讲数据库设计 具体到部分表中有哪些字段
  26. emm 我们部门体量比较大,可能需要加班,到凌晨两三点的那种,也可能通宵,通宵是大促期间,你能接受吗
  27. emm 也会加班到十点,这个不是大促期间,但也不是每天,非常态情况,你能接受吗,你在哪里住,过来要多久,有男朋友吗
  28. 一起去吃午饭吧,我们这边有员工餐厅,不了不了,我回家吃饭吧

下面是面试tmj 之外的公司中遇到的一些问题哈,tmj 中已经被问到的就不再重复写了,只写一下个别公司中我还记得的面试题(重点总结写算法

算法题

  1. [1,1,2,2,3,4,4,5,5,5] 找出不重复的元素(黄包车)
  2. 反转链表,要求时间复杂度O(N),空间复杂度O(1) (火币)
  3. 非递归实现斐波那契数列 (爱奇艺)
  4. 这一周股市价格为[2,6,1,4,8],求哪一天买入哪一天卖出,可获得最大收益,最大收益为多少 (爱奇艺)
  5. 按照箭头方向查找二叉树 (金山云)

表a b c之间用id关联,求阴影部分的数据 (金山云)

  1. 一个整形无序数组,里面三个数只和等于一个目标值,求这三个数 (小米)
  2. 链表问题 (小米)

  1. 扑克牌问题 (小米)
  2. 有十张扑克牌,从上面开始抽,抽出一张放桌子上,然后再抽出一张放扑克牌的最下面,这样循环往复的操作,直到手里的牌都没有了。这时,桌子上牌的顺序正好是1 2 3 4 5 6 7 8 9 10。要求写代码求出原顺序
  3. 手写大顶堆 (linkedMe)
  4. 手写LRU 算法 (火币)
  5. 字符串相加 (滴滴)
  6. 两个数字类型的字符串,直接转int或者double肯定都放不下,然后求这两个数的和,返回值还是字符串,15分钟时间,要求无bug
  7. 寻找目标值位置 (滴滴)
  8. 有一个二维数组,数组横向有序,纵向有序,求目标值的位置,10分钟时间
  9. 求字符串“efabcbaefehiabcba”中最长的回文数,不去重(美团)
  10. 反转int类型的值x,不要借用String,只用int 即可。&& 针对该程序,写出其应有的测试用例 (美团)
  11. top K 问题(每日一淘)

总结

面试难免让人焦虑不安。经历过的人都懂的。但是如果你提前预测面试官要问你的问题并想出得体的回答方式,就会容易很多。

此外,都说“面试造火箭,工作拧螺丝”,那对于准备面试的朋友,你只需懂一个字:刷!

给我刷刷刷刷,使劲儿刷刷刷刷刷!今天既是来谈面试的,那就必须得来整点面试真题,这不花了我整28天,做了份“Java一线大厂高岗面试题解析合集:JAVA基础-中级-高级面试+SSM框架+分布式+性能调优+微服务+并发编程+网络+设计模式+数据结构与算法等”

资料领取方式:点击这里免费下载

且除了单纯的刷题,也得需准备一本【JAVA进阶核心知识手册】:JVM、JAVA集合、JAVA多线程并发、JAVA基础、Spring 原理、微服务、Netty与RPC、网络、日志、Zookeeper、Kafka、RabbitMQ、Hbase、MongoDB、Cassandra、设计模式、负载均衡、数据库、一致性算法、JAVA算法、数据结构、加密算法、分布式缓存、Hadoop、Spark、Storm、YARN、机器学习、云计算,用来查漏补缺最好不过。

y与RPC、网络、日志、Zookeeper、Kafka、RabbitMQ、Hbase、MongoDB、Cassandra、设计模式、负载均衡、数据库、一致性算法、JAVA算法、数据结构、加密算法、分布式缓存、Hadoop、Spark、Storm、YARN、机器学习、云计算,用来查漏补缺最好不过。

字节跳动最新开源!java条件运算符判断三个数大小相关推荐

  1. 字节跳动最新开源!java界面实现查询功能

    一面 1 自我介绍和项目 2 Java的内存分区 3 Java对象的回收方式,回收算法. 4 CMS和G1了解么,CMS解决什么问题,说一下回收的过程. 5 CMS回收停顿了几次,为什么要停顿两次. ...

  2. 字节跳动最新开源!java语言程序设计进阶篇

    一面: 阿里巴巴面试答案文末可以领取! 1. 触发新生代GC,如果存活对象总量大于survivor区容量,咋办 2. 如果任务很多,线程池的阻塞队列会撑爆内存的哪个区域 3. 栈在堆上吗 4. GC ...

  3. 字节跳动最新开源!沈阳java培训哪个好

    一面(个人感觉回答得还不错) 1. 自我介绍 2. 说项目,项目问的非常深(本人提到之前做过的一篇关于FULL GC的问题定位和优化的项目以及一个多并发的项目) 2.1 对于自己产于过项目的系统定位是 ...

  4. JAVA 三目运算符 判断三个数中的最大值

    理解三目运算符使用规则 灵活嵌套使用 代码 import java.util.Scanner;public class MaxNumber{public static void main(String ...

  5. Java实现比较三个数大小

    今天给大家展示一个之前写的Java小程序,实现3个数比较大小.本例中不会用到第三方变量,也不会用if分支.使用更高效率和更可读的写法完成. int a = 10;int b = 15;int c = ...

  6. python判断哪个数最小_怎么用python比较三个数大小

    大部分初学编程的人来说刚开始都会练习判断两个数或者三个数的大小,来熟悉某种语言的特性和最基本的if,else循环,当我们学习了更高级的语法知识后,又会有不同的实现方式,比如依次接收用户输入的3个数,排 ...

  7. 算法小记(1)--判断三个数的最大,最小

    算法小记(1)--判断三个数的最大,最小 package com.zhuguozhu.p1;/*** 判断三个数的最大,最小* @author Guozhu Zhu* @date 2018/4/12* ...

  8. python求三个整数最大值_怎么用python比较三个数大小

    大部分初学编程的人来说刚开始都会练习判断两个数或者三个数的大小,来熟悉某种语言的特性和最基本的if,else循环,当我们学习了更高级的语法知识后,又会有不同的实现方式,比如依次接收用户输入的3个数,排 ...

  9. 对用Python比较三个数大小的方法的纠错

    初学Python,会遇到各种各样的问题,小编也是在这样的过程中成长起来的. 以上是我想说的第一句话,那么对于我的上一句话,有两点需要声明: 1.『小编』这个称谓:第一次写文章,实在不知道从哪开始,只是 ...

最新文章

  1. 汇总|SLAM常用linux命令,包括文件查找、查看文件大小、设置环境变量等
  2. ewebeditor 图片上传中 请等待_AC米兰客场3-1那不勒斯,博内拉透露:伊布伤势情况需要等待...
  3. WEBMIN在命令行下的安装
  4. 使用caffe训练faster-rcnn时遇到的问题总结
  5. Docker日志大小限制
  6. 关于空间坐标转化的若干论文
  7. AC日记——简单密码 openjudge 1.7 10
  8. CentOS 5.2 安装Apache服务器后无法访问解决方法
  9. AngularJS学习(一)
  10. C#匿名对象在其它方法体内怎么取到相应的值(不想建立对应的类并转化的情况下)?...
  11. UGNX1953~1980版本怎么测量重量
  12. win7 配置Window Update失败,还原更改
  13. 依图科技 CTO 颜水成:视觉计算—AI 算法 vs. AI 芯片
  14. VR全景看家装,让家装不再“纸上谈兵”
  15. 数学建模-回归分析(Stata)
  16. Hulu推荐 | 五年口碑依旧百分百好评?《汉密尔顿》上线Disney+
  17. python利用turtle库绘制正方形绕一个顶点旋转
  18. binlog是什么?能做什么?Window下怎么开启binlog?怎么查看binlog日志?利用binlog日志恢复数据
  19. 【Windows网络连接问题】无法连接到这个网络
  20. Android事件分发机制在实战开发中的应用之一

热门文章

  1. 2021级C语言大作业 - 合成一个大西瓜
  2. 做游戏,学编程(C语言) 16 神奇小妖怪
  3. mysql索引or_mysql索引之or条件
  4. Gulp,grunt,seajs/require和browserify/webpack的区别
  5. 超视频化到来,你能看到什么?
  6. 何时运行 A/B 测试,亚马逊、微软、谷歌等大厂是怎么做的?
  7. Javascript与未来十年的数据编程
  8. Kaggle 年度报告出炉:数据科学家年轻高学历,薪资近百万
  9. 为什么有 HTTPS?因为 HTTP 不安全!
  10. 一个月 200 题,命中 80%,拿下 BAT,我独特的高效刷题法