快手客户端开发一面总结
📍面试公司:快手
👜面试岗位:客户端开发
📖面试问题:
由于我投递的是客户端方向,并未强调语言(本身强调了我想从事C++方向),于是hr先面了关于java的
1.讲解一下java中的泛型
2.java泛型类型的擦除机制
准备了好久C++的八股,没想到没有问C++相关而是java的,幸好也学过一点关于java的,跟着学校做过几个项目于是答了一下,但是答得很模糊于,于是我向hr提出了往C++方向靠拢,hr人也挺耐心的问我了一些关于C++的。
3.C++模板和java泛型的区别
这里我说了不少关于C++模板的一些知识点,但是对java泛型掌握的不是太好,于是下面的问题转到了只有C++的
4.说一下C++中的智能指针:
我记得C++98中有一个智能指针,但是当时脑抽了忘记了(auto_ptr),但是这个由于安全性问题被C++11中的unique_ptr所替代,因此我说了C++11中的三个智能指针并且口胡了一下,个人认为说的挺全面的吧,之后又问我了底层原理,我回答的是对原始指针的封装,貌似就是这个,之后又问我了智能指针实现自动释放的原理以及如果有两个对象相互引用怎么处理,这个回答的不是很好...
5.https的通信原理
6.https的加密属于对称还是非对称
7.tcp/ip相关知识点:
由于太紧张,我把https说成了在传输层,在我说完tcp/ip分层之后才反应过来我说错了,之后又把传输层的两个协议(TCP,UDP)还有应用层的部分协议(HTTP,HTTPS,FTP,SMTP,DNS)也说了。
8.常见的http code:
这个我有印象,是404,500之类的,但是我但是不确定这个是不是http code,因此我问了面试官,然后他换题了...估计网络这点要寄掉了...
9.散列表:
稍微介绍了一下,包括操作时间复杂度,如何解决哈希冲突等,感觉这个不是很难
10.归并排序:
按照以前学算法的写,但是存在部分bug,比如爆ll,传递空数组等,但是大部分能过,部分特殊样例无法通过。
结束。
🙌面试体验:整个面试下来不到40分钟,面试官没有给我太大压力,感觉挺不错的,就是我回答问题的时候有一点慌张,回答的有点不好,并且部分没有回答上来,也不知道能不能过,大三马上结束了还没实习,哭死了...
#软件开发笔面经#