面试宝典 - 他山之石

Java面试经历——没能圆梦bat,但至少也努力过

作者:此处应有名字
原文链接:https://www.nowcoder.com/discuss/326324?type=2&order=0&pos=14&page=1


俗话说:金九银十。但是今年说金八银九感觉也不为过。想起7月底就开始在准备秋招,八月底一路跌跌撞撞没有成绩,终于在九月底完成了自己的秋招。发帖子以记录一下,未来想到时。还可以回来翻翻帖子,回味秋招的日子。以下长文警告.........


字节提前批:

一面(挂): 

1.四道算法选一道:A.链表对称翻转 B.找出无序数组中加起来和为某个target的连续子序列 C.出租车在一条公路上走,有好几个红绿灯,某个时间出发,最快多久能到达终点 D.记不清了,类似笔试题

 

网易提前批:

一面: 

1.介绍项目,对着项目问:分布式,一致性哈希,缓存,服务器请求过程等

2.做题:两个数组,在B数组中查找第一个大于A数组里中位数的数字

3.数据库语句,计网知识,Java多线程相关知识,Java基本类型和类之间拆箱装箱关系

二面(挂): 

1.JVM基础知识一箩筐

2.Java并发编程知识一箩筐

3.项目介绍

4.做题:一个矩阵,从左上角查找最长的一条路径,(路径要求:和下一个方格(前后左右都行)的差不超过1,如果到尽头则直接输出),输出出来。

 

珍爱网:

一面: 

自我介绍

项目介绍

Java 的锁有哪几种分别说一说

volatile 是线程安全的吗

Java 线程池如何设置参数

Redis 实现分布式锁的原理说一下

Redis 实现缓存是存储什么数据,过期时间是多少

Mysql 存储了哪些数据?

索引实现原理是什么

索引哪些情况下会失效

设计索引有什么需要考虑的因素

如何查看 SQL 语句的执行情况

除了 Redis 实现分布式锁,还有什么办法:ZK

ZK 实现分布式锁的原理了解吗?不了解,但了解如何实现服务注册与发现

zk 如何保证高可用

zk 高可用的实现原理是什么

看来你对zk这块还不太熟悉,我们聊点别的吧

TCP timewait 情况了解吗?怎么解决

操作系统的 epollo 讲一下

虚拟内存,物理内存

反问

珍爱网二面

自我介绍

项目介绍:深究项目细节

项目当中的作用

有什么难点如何解决

项目目标是什么

有什么提升

项目相关的 TCP 三次握手的原理

多线程,并发,负载均衡怎么处理的

反问

珍爱网HR

自我介绍

对公司了解

想去怎样的公司

之前实习的公司觉得如何

想在以后获得什么

哪里人,家人怎么看你来面试这家公司

反问

 

腾讯: 

一面:

项目介绍

Nginx 相关负载均衡算法

一致性哈希

http 长连接、短连接

epoll 边缘触发与水平触发

epoll 空轮询 bug

https

linux 的页内存。答不会但是了解操作系统的虚拟分页

操作系统虚拟内存:分页分段

linux 命令:dutopfreenetstat

Redis 在项目中怎么使用,使用什么特性

分布式锁的实现除了 Redis 还有什么?

zk 分布式锁实现原理了解吗?不了解,了解服务注册与发现原理

zk 服务注册与发现

算法:复杂链表的复制

服务分组怎么搞(还可以靠标签解决)

二面:

自我介绍

解释一下Tomcat的运行机制

计网HTTP原理

虚拟内存存在的意义/设计原理

Redis 存储缓存比起 Mysql 有什么区别,能用 Redis 存储数据库数据吗

缓存与硬盘的优点缺点比较,为什么需要缓存

项目介绍

针对项目:

如何优化

测试效果如何

Redis 分布式锁怎么使用

除了Redis实现分布式锁,还知道其他的分布式锁实现方式吗: ZK分布式锁实现/基于Mysql的分布式锁实现

设计的线程池运行策略是怎样的

线程池线程数如何设计

为什么没有任务执行的线程要关闭 : 答线程上下文切换会带来损耗

线程上下文为什么会带来损耗 : 讲了用户态和内核态的切换

有没有玩过游戏

英雄联盟的寻路算法要怎么设计:动态规划/深搜/广搜

如何优化:

缓存存储经常寻路的路径,下次寻路直接查出

动态规划计算,使用多个线程并行计算结果,最后选出最短的那一条路径

反问

总监面(挂,此面是感觉最冤大头的,问的问题奇奇怪怪,唉):

C 语言:一个mian函数,执行的第一行就出错了(在中括号的那一行,还没执行响应的代码就出错了,段错误)是什么原因导致的。如何处理

socket():客户端每次发1024字节,循环发十次,服务端socket() read 的时候读多少个字节

一致性哈希:一致性哈希的原理,好处:答上来了;为什么要使用一致性哈希:懵,语塞

微服务的认识与理解

为什么不能单体应用而要使用微服务

平时如何学习的?

讲讲对 MVC 这个框架的理解

一道智力题:AB两个人分别持有一样的牌:3/4/5/6/7/8。单牌只能吃单牌,对牌只能吃对牌,不能拆牌下。A先下牌,问一定能赢吗?

 

华为:

一面:

自我介绍

项目相关

线程安全实现方式

Redis 分布式锁如何实现

Nginx负载均衡原理、所选负载策略

Nginx能否感知消息队列宕机

如果服务器宕机怎办,一致性哈希可以进行处理

一致性哈希的优点,能解决什么问题。机器数量高度可拓展,宕机的时候数据迁移量少

如果让你设计哈希算法你会怎么设计。答:取模;反问:那机器数量改变怎么办,模数不是又得改了。其实是因为没答到点。其实得答按机器数量取模

思考题:

微博几十亿条数据,要实时展示出评论前10条的数据,怎么快速查询

哈希再哈希,哈希到对应机器上面时使用键值对进行获取

那修改的时候呢?如何提高效率

算法题:

On)时间复杂度找出数组中的TopK元素:使用快速排序的思想进行查找,排序一部分数据就行,不需要排序全部

二面:

自我介绍

Java并发相关

线程安全实现方式

volatile 实现原理

synchronized 实现原理/比起可重入锁的区别

线程池的实现方式

线程池的核心参数如何设计

计算机网络相关知识:TCPUDP

操作系统相关:

虚拟内存

如何查看占用CPU较多的原因

JVM 部分:

分代情况

Java的内存管理策略

年轻代中的划分情况/比例

年轻代怎样会升级到老年代/如何设置升级年龄

复制回收算法是怎样的

算法题:

两个排序好的数组,找出其中位数,要求时间复杂度O(mn):可以使用折半查找的方法进行查询

三面:

自我介绍

说说实习的时候做了什么

说说工作室的经历

 

对华为的认识,为什么想加入

对自己的评价

技术方面的追求

 

腾讯微保:

一面: 

自我介绍

项目介绍

Java基础,计网基础,操作系统基础

算法题:

股票买如卖出各一次,求利益最大的方案

二面: 

自我介绍

项目介绍

对保险行业的了解

反问

 

Bigo 

一面: 

自我介绍

Java并发相关

线程安全实现方式

volatile 实现原理

synchronized 实现原理/比起可重入锁的区别

线程池的实现方式

线程池的核心参数如何设计

ThreadLocal 的底层实现与使用方法

数据库相关:Mysql

Mysql 索引实现原理

InnoDB/MyISAM 之间的区别:从索引实现,数据存放位置,适用场景的方面讲

SELECT COUNT(*) 哪一个引擎更快,为什么

a,b联合索引,查询条件为a/b/a AND b 走不走索引

如何查看慢查询出现的情况: 打开慢查询日志进行查看

如何查看某条慢查询语句执行时占用的CPU/内存/耗时等情况: 这个没了解过

计算机网络相关:

TIME_WAIT/CLOSE_WAIT 如何解决

操作系统相关:

虚拟内存

如何查看占用CPU较多的原因

查看线程pid

接下去就不会了,只会如何排查占用内存较多的方法

项目相关:

项目介绍

Redis 分布式锁如何实现

Redis 缓存存放什么数据/使用什么数据格式存储

Redis 是单机部署的吗

测试情况如何

JVM 部分:

分代情况

垃圾回收策略

年轻代中的划分情况/比例

年轻代怎样会升级到老年代/如何设置升级年龄

复制回收算法是怎样的

二面:

自我介绍

手撕字符串转数字

手撕判断矩阵是否是数独

TCP 三次握手,各个状态与传递参数

JVM 内存模型(运行时内存)

介绍一下几种 GC 收集器

CMS 的具体垃圾收集策略是怎样的

死锁出现的条件

Java 加锁的方法:synchronized AQS CAS

ABA 是什么问题,如何解决

有哪几种线程池

JVM 参数调优如何设置

三面: 

自我介绍

说说实习的时候做了什么

分布式锁怎么实现

Redis 事务了解吗,怎么处理

RPC 的实现原理

Zookeeper Watch 机制了解吗

Dubbo 的序列化框架

服务注册发现怎么做的

Redis sortSet 底层实现是如何

sortSet 的查询,写入和删除时间复杂度分别是多少

AOP 如何实现的

GIT 如何进行版本回退

大数据有没有了解

回去要学习什么?

 

整个秋招下来,有过辛酸和不甘、无奈和失望,但是菜鸡也同样可以通过后天的努力来弥补自己的菜的。庆幸自己最终还是坚持了下来,好运的光顾,让自己最终拿到了满意的offer

如果算上春招,自己其实已经从去年12月就开始准备了,但是一直没有找到好的机会。那其中有第一次面阿里云的无经验之尴尬,有支付宝面完所有技术面最后没HC的无奈,还有腾讯被捞4次两次挂在2面的悲惨经历,就不一一叙述了。

感谢实验室和自己一起复习备战的小伙伴,感谢实习的时候互相鼓励的队友、室友,感谢实验室指导老师,感谢蒸蒸日上的学校。该上岸的已经上岸了,还没上岸的也抓紧了,我们在等着你!

 

——————谨以此,记录自己春秋招的求职经历。愿归来,仍是少年~Fighting

登录后发表评论