2021-9-2
8月19号HR面试完,今天终于收到 OC了~
成都的HR说成都没HC了,问我调剂北京,经过一番思考,还是同意调剂了~~
看来要北漂几年了~
-------------------------------------------------------------------------------
8-19:下午结束了HR面,15min,许愿OC~~~
----------------------------------------------------------------------------------
8-12 三面,面试时长1h,面试官很好
三面准备了贼久,久到我都复习疲了,几乎把牛客上所有字节客户端+部分后端面经整理复习了~
然而!!!面试官没问这些😭😭😭
大部分时间都在问项目,深挖项目!!!深!挖!项!目!!
1.问如果我要把自己项目(非C++写的)用C++写的话,要怎么设计,设计多少个类,设计哪些类,每个类的作用是什么(答得不好,面试官一直都在引导我)
2.针对我提出的设计方法,继续追问什么是面向对象,面向过程,我就说了C++封装、继承、多态,说了C++的作用与优点
(但不是面试官希望的答案,后来面试官给我解答,说C++主要是用于超多人协作,主要用到的是封装性,不同人负责不同地方,不管你怎么实现的,最后实现其他人需要的接口就行,还有就是C++的继承,行业里面基本都不用了,因为相比继承带来的优点,它带来的缺点可能更多)
(项目这块一共问了40+min,问得比较复杂,就不一一展示了)
3.设计模式了解吗,(答了解单例、工厂等常见的)
4.实际中用过什么设计模式吗,单例模式解决什么问题
5.写过单例代码吗,写个单例代码(问饿汉还是懒汉,面试官说随意,遂写了个懒汉)
6.针对单例模式懒汉模式中的锁(我用的mutex),问mutex锁叫什么锁,原理是怎样的
7.除了互斥锁,还有别的什么锁(答:读写锁、自旋锁)
8.如果是自旋锁,会有什么问题(不知道,想了下:1.获得自旋锁的线程持有锁很久,其他线程等太久,CPU资源浪费 2.获得锁的线程因为某些原因未解锁,其他线程一直等待,将一直占用CPU资源浪费)
9.听过优先级反转吗(我以为是进程调度算法中的优先级调度,发现不是,答没听够)
10.写一个快排,自己模拟些数据,看能不能编译通过(秒了)
反问:字节新人培训机制
许愿hr面,求求了
更新:7-30 10:00左右收到三面通知,可能29号晚上hr没有加班吧,现在就能好好准备三面了~
---------------------------二面------------------------------------
时间:2021-7-29 15:00,时长52min
面试小哥全程冷漠脸,声音特别低,很多时候听不清问题,需要我再询问确定
1. 自我介绍
2. 为什么倾向于IOS开发(一面时面试官问我iOS开发和Android开发倾向于哪一个,我答了iOS)
3. 了解过 iOS开发用什么语言吗
4. 操作系统了解吗
5. 什么是操作系统
6. 操作系统主要有哪些功能
7. 线程和进程的区别
8. 进程有哪几种状态
9. 进程间的通信方式
10. 线程间的同步方式
11. 进程的调度算法
12. 常见的几种内存管理机制
13. 什么是虚拟内存
14. 虚拟内存的实现方式
15. 页面置换算法
16. OSI七层模型
17. 应用层主要有哪些协议
18. TCP和UDP的区别
19. TCP和UDP的实际应用场景
20. 介绍下三次握手
21. TCP为什么是三次握手不是两次
22. TCP协议是如何保证可靠传输的
23. 什么是cookie
24. 对面向对象的认识
25. 类成员函数的重载、重写与隐藏的关系
26. 多态实现的原理
27. 什么事多态
28. 链表和数组有什么区别
29. 队列和栈的异同
30. 指针和引用的区别
31. 怎么避免野指针
32. 内存的分配方式有哪几种
33. 什么是内存泄漏
许愿三面~~
-----------------------------7.213 一面------------------------
面试官人还是挺和蔼的,就是说话有点快,很多时候听不清问的什么,还要再重复下问题,有点尴尬
1. 开局自我介绍
2. (面试官:那我们先问下计算机和计算机网络相关的吧)地址总线、数据总线、控制总线的作用(不会,第一个问题就不会,尴尬的开端)
3. (面试官:这块儿不太了解是吧,那我们问下计算机网络相关的吧)IP路由器寻址过程,可以结合个例子说下(不会)
4. (面试官:那计算机网络这块比较了解什么,答: HTTP相关)HTTPS加密的方式,加密的究竟是什么
5. (面试官:那我们问下C++相关的吧)const 和 constexpr的作用和区别
6. const_cast、static_cast、reinterpreter_cast、dynamic_cast
7. 智能指针
8. 虚函数和纯虚函数的作用和区别
9. C++中的锁有哪些,你用过哪些
10. (可能面试官觉得我基础太菜,开始问项目了,项目问了10min)做完项目有什么收获
11. (面试官:时间还有点早,我们做几道题吧)给一个二叉搜索树的后序遍历,重建该二叉搜索树,有点类似于这个leetcode1008,只不过给定的是后续遍历序列(做出来了,并解释了下思路)
12. (面试官:那我们做个不常见的吧,emm~那就写个LRU吧)leetcode 146
全部评论
(8) 回帖