写点什么

两个月面试 5 家,(美团、360、新浪网、完美世界、搜狐)已拿美团 18k*16 薪 offer

用户头像
云流
关注
发布于: 1 小时前

前言

两个月面了美团、360、新浪网、完美世界、搜狐五家公司,其中两个公司面的都是 Java 研发,美团三面面试官说是做外卖机器人(类似无人驾驶车),个人比较感兴趣,如果发 offer,就签约美团了。找工作这几个月,自己也看了很多的面经,收藏了一系列的面试资料,为了回馈帮助过或给我带来信心和失落时鼓励的你们,特将美团、360、新浪网、完美世界、搜狐的面试经历记录一下。希望取之以桃,报之以李吧。另外有需要面试资料的小伙伴们,也可以在文末领取一下!


美团

一面

1.自我介绍和项目。

2.项目里面的数据库如何设计的?

3.varchar 的最大长度,超过了用什么?

4.多列索引怎么用?并解释底层原理。

5.左连接、右连接、内连接。

6.说出几种保证线程安全的方法。

7.说出几种保证线程同步的方法。

二面

1.自我介绍和项目。

2.五层网络协议和 osi 七层网络协议。

3.tcp3 次握手和 4 次挥手,并解释如果 3 次握手改成两次行不行?

4.编程题,判断链表是否有环,除了快慢指针还有其它做法嘛?

5.编程题:找到链表的中间节点。

6.编程题:给出一个 char 数组 比如 a,b,c 每个字符出现的概率给出,如 10%,20%,70,写一个算法保证打印 10000 次字符,这三个字符的出现频率是给出的频率,而且每个字符都是随机打印的,不能连续打印。

7.Mysql 的存储引擎。

8.事务的隔离级别,并回答幻读是出现在一次事务操作还是两次?

9.说下你了解的设计模式,并说下单例中的饿汉式和懒汉式的区别和各自的优缺点。

10.场景设计,商品表,一共 100 件商品,如何保障多用户购买商品时,商品数量不会出现负数,并且保证效率最高。

三面

1.cap 了解么?分别指什么?

2.网络编程 nio 和 netty 相关,netty 的线程模型,零拷贝实现。

3.Redis 是单线程还是多线程?Redis 的分布式集群怎么做?

4.分布式消息队列有哪些(Kafka 等)?有使用过哪些?具体应用在什么场景?

5.负载均衡怎么做的呢,为什么这么做,了解过集群雪崩么?

6.谈谈高并发场景下削峰,限流的实现?

四面

HR 面,聊优缺点,聊人生规划,聊学习技巧,聊各种有的没有,问 Offer 状况。


360

一面

差不多三十五分钟左右吧

1.介绍你做过的项目。

2.手写单例模式。

3.布局优化。

4.有没有用过什么开源框架?

5.ImagLoader 的实现原理。

6.OnTouchEvent 事件中 down 事件 和 up 事件的传递。

7.hashMap 的实现原理。

8.LinkedHashMap 的实现原理。

9.内存管理及优化。

10.点九图。

二面

一面过了十多分钟以后,接着就进行二面,都是视频面试,差不多二十分钟左右

1.AsyncTak 的原理及常用方法。

2.APK 从安装到启动的过程。

3.平时是怎样学习的?

4.学习和实习是在怎样协调的?

5.有 360 手机助手有什么想了解的吗?

题外话

感觉个人太紧张了,有好多原理性的东西讲着讲着就忘记讲了,面试的时候真的是太紧张了,发挥不太好,平时一定要多总结,不然面试的时候一下子总结地不太好,发挥不出应有的水平。


新浪

一面

1.先问自我介绍,说一下你认为的团队合作?

2.用过 Linux 系统吗?常用指令(我说不太了解,就没问)

3.说一下虚拟内存?

4.介绍一下 hashmap?

5.hashmap 和 hashtable 的区别?

6.算法题:10 万行数据,每一行都是一个 int 类型的数,按数字出现的频次取出现次数最高的 10 个数

7.输入是一个整形数组,输出:数字+频次

8.思路:可以自己定义一个类,里面 key 为出现的数字,value 为出现的频次

9.然后新建一个容量为 10 的小顶堆,按照 value 进行排序。

10.我是用 hashmap 统计的,然后再对 value 用小顶堆(priorityqueue)排序,需要把 value 和 key 绑定。如果下一个的 value 小于堆顶则丢弃,大于堆顶则插入。

二面

1.自我介绍;

2.介绍项目;

3.KVM 和 XEN 虚拟化的区别

4.如何用 JAVA 生成永远的 ID:UUID(Universally Unique Identifier)

5.树的遍历,并非二叉树的遍历

6.堆排序的问题

7.多线程轮流执行用什么锁??

8.AOP 的底层原理(动态代理,GClib)

9.Object 类的方法

10.循环依赖如何解决,自己设计几种算法

11.快速排序原理,随机快排口述

12.iptable 实现反向代理

三面

1.首先问了我发表的论文具体的内容是什么?

2.虚拟内存知道么?什么时候使用虚拟内存?虚拟内存除了扩大内存还有什么用?

3.Spring 的上下文切换,如何优化上下文优化来做到减少系统资源消耗?

4.函数调用约定了解么?Function calling convention。

5.进程线程的区别,除了包含关系之外的一些区别,底层详细信息。

6.TCP/UDP 全部内容:三次握手、四次挥手、为什么不能两次,为什么三次,TCP 的可靠是怎么实现的,滑动窗口,为什么是 2MSL?

7.边缘网关协议了解么?简单描述一下

8.Docker 容器相关。

9.高并发接触过么(没有,都是用户量小,业务驱动技术,并不是产品驱动技术)

10.最后一个就是 sql 语句的考察,然后各种变换情况,表连接什么的,我以为写错了,结果面试官说都对~


完美世界

一面

1.自我介绍。

2.讲一下 HashMap,HashMap 和 Concurrent HashMap 有什么区别,HashMap 的 Key 可以为 Null 吗?Concurrent HashMap 呢?

3.知道异常吗,将你知道的异常写出来(这个我把异常的整个体系画出来了,然后我自觉的将 Error 和 Exception 区别讲了一下),说说常见的 Runtime Exception。

4.了解并发编程是吧(因为我简历上写了了解 Java 并发编程),讲讲 Synchronized 和 Lock(这个我就将用法和注意事项和性能的区别一一讲述),Synchronized 修饰普通方法和修饰静态方法有什么区别,然后面试官给我写了两个情景让我讲程序运行情况。

5.讲讲 GC 机制,知道担保机制吗?

6.Java 中阻塞线程的方法有哪些?(刚开始紧张说成中断有哪几种了,然后面试官提醒我说他没问这个)

7.平时数据库用的是什么?讲讲 Mysql 的存储引擎。写几个 SQL 语句。

二面

1.会用线程池吗?知道数据库连接池吗?如果让你写一个你怎么写?(现场写喔,但是我当时不知道怎么想的,以为面试官让我写线程池,我就写了半天线程池,然后面试官等不及了就看我写的我还一本正经的给讲线程池,然后就很尴尬的进入下一题了哈哈哈哈)

2.知道 Https 吗?写一下详细连接过程。

HR 面

主要是问如何做的项目和平时生活学习状态,讲了一下薪酬和培训机制,感觉完美的人都蛮好的~

总裁面

总裁很有气场!进去就直接问项目里的东西,讲了一些项目里用到的技术,问平时怎么学习,看什么书,在项目里都干了什么。然后就差不多了,感觉总裁特别特别忙,问我有什么问题,我就说没有了,然后就结束啦。


搜狐

一面

1.自我介绍。

2.你用到了 LDA,那么请讲一下 LDA 的原理是什么?我简单说了一下 LDA 生成文档的过程,但是根据什么生成没答上来 2333(LDA 是我的痛,看了几遍没看懂)

3.也就是说你的计算是现场算的么?是的,我知道这样效率有问题,我的系统中没有解决,但是可以先对新闻进行聚类,然后对每个簇提出一个模型,先匹配簇在选择新闻(SCENE 论文中的方法)

4.你的数据量有多大?3 万多条新闻,100 个用户吧。

5.你的用户较少,那么在推荐的时候矩阵一定是稀疏的,对于这个稀疏矩阵应该如何处理?可以用 PCA 或者 SVD 进行矩阵分解

6.你的关键字是如何从文档中提取出来的?使用了中科院的 NLPIR+TF-IDF 算法。

7.讲一讲 tf-idf 是什么意思,TF 就是表示词频,IDF 是逆文档频率的意思计算方法为 log(N/n),N 新闻集的大小,n 为包含这个词的新闻的数量。

8.你系统使用什么语言实现的?

9.你的新闻的备选集如何获取?选取当天新闻,挨个算一遍。

二面

1.你的项目部署在哪里?

2.讲一下项目

3.把项目中的主要数据库表怎么设计的写一下它的结构

4.用户表密码是怎么存储的?(回答 MD5)你知道还有别的加密方式吗?

5.写 SQL,根据设计的表进行多表查询(写了一个嵌套查询,又让写 join 查询)

6.索引该怎么建?针对你设计的表每个字段,需不需要建立索引?

7.建索引的原则是什么?

8.你主要用了 SpringBoot 的哪些功能?

三面

1.你做的项目,哪些是对你来说无论是技术成长还是难度上是比较挑战,你项目遇到什么挑战怎么解决的?

2.你的项目具备什么样的能力,主要是解决什么样的问题?

3.项目的一些问题,做了多久?你每天都会做吗,还是会做一些学习上的事情?

4.做完之后有请周围的人或者朋友来感受一下吗?

5.算法题:

输入一个整数,判断是否是自除数

输入一个字符串,只考虑数字和字母,忽略字母大小写,验证是否为回文串?

6.代码中为什么用 StringBuilder,不用 StringBuffer?

7.你有看过 Java 怎么实现 equals 和 hashcode 吗?

8.好了,那么你觉着你自己都有哪些优点呢?

最后

所有的面试题目都不是一成不变的,上面的面试题只是给大家一个借鉴作用,最主要的是给自己增加知识的储备,有备无患。秋招即将来临,来刷刷这份秋招面试手册,有需求即可免费分享下载!(着重挑了一些常见的重要的面试题展示出来了)


所有的面试题目都不是一成不变的,上面的面经只是给大家一个借鉴作用,最主要的是给自己增加知识的储备,有备无患。

文中提到的相关面试题整理成了 40 多套 PDF 文档:全套的 Java 面试宝典手册,“性能调优+微服务架构+并发编程+开源框架+分布式”等七大面试专栏,包含 Tomcat、JVM、MySQL、SpringCloud、SpringBoot、Dubbo、并发、Spring、SpringMVC、MyBatis、Zookeeper、Ngnix、Kafka、MQ、Redis、MongoDB、memcached 等等。如果你对这个感兴趣,小编可免费分享。

资料获取方式:点击这里即可获取到文章中的文档,资料

用户头像

云流

关注

还未添加个人签名 2020.09.02 加入

还未添加个人简介

评论

发布
暂无评论
两个月面试5家,(美团、360、新浪网、完美世界、搜狐)已拿美团18k*16薪offer