当前位置:首页 > 快手培训 > 正文

【offerMe--面经必备】---快手面经分享(包含答案)

2021-02-19 21:09:01 暂无评论 快手培训

1.序

马上春招了,分享一波干货。腾讯、百度、阿里、京东、快手、斗鱼、华为、海康威视等面试过程。今天来看看快手。


在面试之前给大家看看我的简历以及个人简介部分,因为面试过程与自己的简历有很大关系。面试官往往会结合简历以及个人简介来问。


个人简历:梦想成真-----项目自我介绍


个人简介:【offerMe--简介必备】一字一句教你面试“个人简介”


2.快手面试过程


2.1快手1面 (部门:效率工程、时间:60分钟)


1题目:两数之和

https://blog.csdn.net/weixin_41563161/article/details/104762344


2Socket协议用什么协议(Socket底层)

直达链接:梦想成真---Socket技术详解


3Java和python的区别

https://blog.csdn.net/weixin_41563161/article/details/104780661

如果让我接触新的语言,我可以接受,并且我会尽快入门,然后参与开发。因为我学习能力还是挺强的。



4项目中 为什么不全用unity3D做而是用wpf+unity3D来实现仿真

因为航天方面的软件有一款公认的也是目前唯一的承认的STK,就是那个传统的客户端,简单的界面,不是全部unity仿真,如果70%的任务全部是非仿真的,所以开发较快,用了WPF;



5项目中用到CLR组件优势在哪里

是因为模块化,以后需要的话直接拿来复用,因为实验室经常接这种航天类项目,航天类项目的话有一些是可复用的,比如轨道计算,星座覆盖,链路,这些等等。所以用组件的模式


其实这里考的是设计模式里面的策略模式模块化思想


直达链接:你们要的设计模式来了


6java中集合有哪些?Hashmap 和TreeMap区别?

7红黑树的特点?

https://blog.csdn.net/weixin_41563161/article/details/104986919(TreeMap使用场景 优势)


https://blog.csdn.net/weixin_41563161/article/details/102610132(B树  B+树 红黑树详解)


https://blog.csdn.net/weixin_41563161/article/details/104163948(b树和b+树的区别)


https://blog.csdn.net/weixin_41563161/article/details/104163994(TreeMap了解吗 红黑树)


https://blog.csdn.net/weixin_41563161/article/details/105462349(红黑树叶子节点都为黑色)

 

https://blog.csdn.net/weixin_41563161/article/details/104452601(java面试 –红黑树(插入删除过程详解))


以上是一些零散文章还没有进行大一统的整理,之后会出一篇文章进行讲解。


8mysql数据库索引数据结构  为什么用B+树

9主键索引和普通索引的区别

https://blog.csdn.net/weixin_41563161/article/details/102610132(B树  B+树 红黑树详解)


https://blog.csdn.net/weixin_41563161/article/details/104163948(b树和b+树的区别)


https://blog.csdn.net/weixin_41563161/article/details/105483950(B+树分裂)


https://blog.csdn.net/weixin_41563161/article/details/105165346(索引


https://blog.csdn.net/weixin_41563161/article/details/103553313(数据库索引怎么实现的


https://blog.csdn.net/weixin_41563161/article/details/102859171(普通索引和唯一索引,应该怎么选择?)


https://blog.csdn.net/weixin_41563161/article/details/102457643(深入浅出索引)


以上是一些零散文章还没有进行大一统的整理,之后会出一篇文章进行讲解。

10Arrays.sort()的底层实现

Java Arrays中提供了对所有类型的排序。其中主要分为Primitive(8种基本类型)和Object两大类。
基本类型:采用调优的快速排序
对象类型:采用改进的归并排序

源码中的快速排序,主要做了以下几个方面的优化:
1)当待排序的数组中的元素个数较少时,源码中的阀值为7,采用的是插入排序。尽管插入排序的时间复杂度为0(n^2),但是当数组元素较少时,插入排序优于快速排序,因为这时快速排序的递归操作影响性能。

2)较好的选择了划分元(基准元素)。能够将数组分成大致两个相等的部分,避免出现最坏的情况。例如当数组有序的的情况下,选择第一个元素作为划分元,将使得算法的时间复杂度达到O(n^2).
3)根据划分元 v ,形成不变式 v*

  • 当数组大小为 size=7 时 ,取数组中间元素作为划分元。int n=m>>1;(此方法值得借鉴)。

  • 当数组大小size大于7小于等于40时,取首、中、末三个元素中间大小的元素作为划分元。

  • 当数组大小 size>40 时 ,从待排数组中较均匀的选择9个元素,选出一个伪中数做为划分元。


11文档编写

软件需求书 软件使用说明书 技术说明书 测试报告  markdown  绘图软件


12提问的问题

(1)贵司的培养模式
(2)公司内部是否支持内部转岗这样的政策
(3)公司的竞升机制是怎么样的
(4)这是我第一次面试,如果可以,希望您能给我提点建议。如果不方便的话,那就辛苦您花时间来面试我了。谢谢
(5)目前我去了做什么工作。


13其它问题


我喜欢努力极致的做目前所做的事情,就比如大学期间侧重于学生工作,所以就做到了一定的层次然后锻炼了我遇到问题解决问题的能力了。研究生期间也一样,既然选择了做研究做学问那么就一心把它做好,这也是当时为什么我本科期间基础并不是很好学历也不是很好,但是能在很短的时间内迅速提升起来并且有幸去北京***实验室参与并负责一个项目的原因。


2.2 安卓一面(部门:快手短视频海外版 时间:50分钟)




1流量控制拥塞控制是怎么??是在路由器阻塞了吗

https://blog.csdn.net/weixin_41563161/article/details/106088167(拥塞控制 流量控制区别)

https://blog.csdn.net/weixin_41563161/article/details/104218014(TCP流量控制机制、拥塞控制)


2用户和内核态

https://blog.csdn.net/weixin_41563161/article/details/105050458?


3换页

https://blog.csdn.net/weixin_41563161/article/details/105106416(页面置换算法)


https://blog.csdn.net/weixin_41563161/article/details/104287186(LRU 缓存算法)


4快速排序

直达链接:【offerMe--数据结构】----排序算法


5TCP UDP

直达链接:一篇让你掌握TCP与UDP首部格式


6项目

直达链接梦想成真-----项目自我介绍


7线程创建会有一系列的 底层操作

https://blog.csdn.net/weixin_41563161/article/details/106086897(线程的底层实现)


8内存模型。比如成员变量 局部变量之间

https://blog.csdn.net/weixin_41563161/article/details/105316381(Java内存模型)

https://blog.csdn.net/weixin_41563161/article/details/102670179(Java内存分布、常量池、运行时数据区域)


9volatile

https://blog.csdn.net/weixin_41563161/article/details/103869694(lock ,sychronized,volatile的区别)


10Hashmap 插入的过程

https://blog.csdn.net/weixin_41563161/article/details/105462699(hashmap中两次hash过程)

https://blog.csdn.net/weixin_41563161/article/details/102659874(java中HashMap原理)

https://blog.csdn.net/weixin_41563161/article/details/105041804(HashMa在JDK1.7版本头插法实现解析)

https://blog.csdn.net/weixin_41563161/article/details/104708231(hashmap底层实现)

https://blog.csdn.net/weixin_41563161/article/details/104190568(HashMap、Hashtable、ConcurrentHashMap的原理与区别)


11sleep wait区别

https://blog.csdn.net/weixin_41563161/article/details/102723400


12场景题 下载,打水,分享 用到的设计模式

责任链模式 + 策略模式 + 命令模式

其实这个地方还是考设计模式

直达链接:你们要的设计模式来了


13分组交换和电路交换的区别

https://blog.csdn.net/weixin_41563161/article/details/106087162


14类锁和对象锁

https://blog.csdn.net/weixin_41563161/article/details/104918952


15静态方法和非静态方法

直达链接:java中静态变量,静态代码块,静态方法,实例变量,匿名代码块的加载顺序



2.3 快手安卓二面(部门:快手短视频海外版 时间:60分钟)


1线程池

https://blog.csdn.net/weixin_41563161/article/details/105304160(Java线程池实现原理---美团技术栈)

https://blog.csdn.net/weixin_41563161/article/details/103666165(线程池)

https://blog.csdn.net/weixin_41563161/article/details/105167708(线程池详解)

https://blog.csdn.net/weixin_41563161/article/details/104889470(线程池关闭以及状态)


2两两反转链表

直达链接:剑指offer--链表--反转链表


3https

直达链接:一篇让你彻底了解HTTP 的前世今生

直达链接:一篇让你彻底了解http请求报文和响应报文的结构

直达链接:程序员必考---http\https的连接过程


4操作系统里面的软中断硬中断

https://blog.csdn.net/weixin_41563161/article/details/106066862


6DNS是单条消息吗 用的什么协议

https://blog.csdn.net/weixin_41563161/article/details/106069473(DNS用的是TCP协议还是UDP协议)
https://blog.csdn.net/weixin_41563161/article/details/113133203(一篇让你彻底了解DNS原理及其解析过程)

https://blog.csdn.net/weixin_41563161/article/details/104896247(DNS解析详细)


7线程池以及java提供的线程 如何停止一个线程

https://blog.csdn.net/weixin_41563161/article/details/104942044


8docker

https://blog.csdn.net/weixin_41563161/article/details/102586686



9堆和栈

https://blog.csdn.net/weixin_41563161/article/details/105316381(Java内存模型)


https://blog.csdn.net/weixin_41563161/article/details/102670179(Java内存分布、常量池、运行时数据区域)


10垃圾回收

https://blog.csdn.net/weixin_41563161/article/details/103882414(G1和CMS区别)

https://blog.csdn.net/weixin_41563161/article/details/103865628(分代回收算法)

https://blog.csdn.net/weixin_41563161/article/details/104093660(GC回收机制(垃圾回收器经典算法)(JVM中内存区域的划分)(GC收集器有哪些))

11亿个数字找出前1000大的数字

https://blog.csdn.net/weixin_41563161/article/details/102846524(如何在10亿数中找出前1000大的数)

https://blog.csdn.net/weixin_41563161/article/details/104370095(Top-N)



3.快手面试感受

  • 切记不要随便在牛客网上扔简历,因为牛客网上一个招聘信息出来后扔简历的人很多,我的快手第一次面试就是没过,我的另一个小伙伴也一样,因为人太多了所以没有优势,(其实还是自己菜)。

  • 最好找自己的师兄师姐帮忙内推这样几率大。

  • A题一定要A过去,这就要在之前狠下功夫,如果一开始题就不行后面的面试如果没有特别出彩的话会直接pass。

  • 基础知识的总结,每一次面试完都要及时修补,然后就是新知识的补充。

  • 坚持,它是一个持久战,只要不断努力小伙伴们一定、一定、一定会拿到心仪的offer。

  • 快手的面试官很好,所以放轻松尽情的表达自己就 OK了。


关注公众号“程序员面试之道”


回复“面试”获取面试一整套大礼包!!!


本公众号分享自己从程序员小白到经历春招秋招斩获10几个offer的面试笔试经验,其中包括【Java】、【操作系统】、【计算机网络】、【设计模式】、【数据结构与算法】、【大厂面经】、【数据库】期待你加入!!!


优质文章推荐:

1.计算机网络----三次握手四次挥手

2.梦想成真-----项目自我介绍

3.IntelliJ IDEA 2020.3.2激活破解(附安装包及补丁、激活码)

4.震惊!来看《这份程序员面试手册》!!!

5.一字一句教你面试“个人简介”

6.接近30场面试分享

7.你们要的免费书来了

8.思维导图Xmind2020 3.1中文正式版激活指南

文章转载自微信公众号程序员面试之道

博客主人破茧短视频培训
破茧短视频为你分享抖音、快手等短视频平台的视频拍摄、剪辑和运营技巧,另有短视频培训学习教程,海量干货助你玩转短视频运营!。
  • 51952 文章总数
  • 4876085访问次数
  • 2205建站天数