# 字节iOS客户端实习123面经

作者：offer快到碗裏来\
链接：[https://www.nowcoder.com/discuss/448502](https://www.nowcoder.com/discuss/448502)\
来源：牛客网\
\


开篇先许愿offer mail：

昨天刚面完三面，今天上午11点我的HR小姐姐打来了心心念念的offer call，说几个工作日内可以收到offer～

拿到offer mail再来还愿哈哈哈

————————————————

时间线：

别人的字节流程都很快，但我的战线拉的非常的长😂，6月1号投的简历，8号约17号一面，17号约24号的二面（后来又因为面试官时间原因调整到了29号），7月2号约了7号的三面，8号oc，无HR面

————————————————

正文开始（[面经](https://app.gitbook.com/jump/super-jump/word?word=%E9%9D%A2%E7%BB%8F)）：

面试准备过程几乎看遍了所有的字节iOS[面经](https://app.gitbook.com/jump/super-jump/word?word=%E9%9D%A2%E7%BB%8F)，对我帮助真的很大，所以我也来回馈一下

面试过程没录音，以下是我还记得的问题：

一面 （6.17 35min左右）

1.自我介绍

2.C++内存如何分布、堆和栈的区别

3.刚才提到malloc，说一下malloc咋实现

4.c++多态说一说

5.简历上有个web[前端](https://app.gitbook.com/jump/super-jump/word?word=%E5%89%8D%E7%AB%AF)[项目](https://app.gitbook.com/jump/super-jump/word?word=%E9%A1%B9%E7%9B%AE)，说一下其中遇到什么问题

6.跨域问题如何解决

7.ip头都有啥内容

8.析构函数是不是必须是虚函数，哪些情况是，哪些不是

9.url过程

10.[算法题](https://app.gitbook.com/jump/super-jump/word?word=%E7%AE%97%E6%B3%95%E9%A2%98)：求k数

给一个数组，找出这样一些数，这个数左边的数都比它小，右边的数都比它大

没刷到过这个题，一开始满脑子都是快排思想，面试官提示用[动态规划](https://app.gitbook.com/jump/super-jump/word?word=%E5%8A%A8%E6%80%81%E8%A7%84%E5%88%92)的思路后才写出来

11.反问

面完感觉要凉，因为[算法题](https://app.gitbook.com/jump/super-jump/word?word=%E7%AE%97%E6%B3%95%E9%A2%98)表现自己觉得真的八太行，结果3.5小时后接到了约二面的电话

二面（6.29 39min左右）

1.自我介绍

2.https说一说

3.知道哪些加密[算法](https://app.gitbook.com/jump/super-jump/word?word=%E7%AE%97%E6%B3%95)

4.数据库原子性说一说

5.内存泄漏的可能原因

6.设计模式知道哪些

7.[算法题](https://app.gitbook.com/jump/super-jump/word?word=%E7%AE%97%E6%B3%95%E9%A2%98)：[leetcode](https://app.gitbook.com/jump/super-jump/word?word=leetcode)1 [两数之和](https://app.gitbook.com/jump/super-jump/word?word=%E4%B8%A4%E6%95%B0%E4%B9%8B%E5%92%8C)，给出三种方法

菜鸡如我先说个暴力遍历；然后说了哈希，进而面试官让说说哈希的底层实现；面试官又让优化空间复杂度到O(1)，我说了[排序](https://app.gitbook.com/jump/super-jump/word?word=%E6%8E%92%E5%BA%8F)+双指针，又让说了知道的[排序](https://app.gitbook.com/jump/super-jump/word?word=%E6%8E%92%E5%BA%8F)[算法](https://app.gitbook.com/jump/super-jump/word?word=%E7%AE%97%E6%B3%95)以及细说堆排，最后coding实现第三种

8.反问

二面感觉还行，2小时后问到面试通过，但3天后才约三面

三面 （7.7 35min左右）这面好多计网，计网知识稀碎的我越面越绝望(˶‾᷄ ⁻̫ ‾᷅˵)

1.自我介绍

2.DNS域名解析

3.TCP和UDP各自使用场景

4.http头

5.数据库inner join、left join、right join分别是干嘛

6.指针和引用的区别

7.[算法题](https://app.gitbook.com/jump/super-jump/word?word=%E7%AE%97%E6%B3%95%E9%A2%98)（只用说思路）：[剑指offer](https://app.gitbook.com/jump/super-jump/word?word=%E5%89%91%E6%8C%87offer) 62 圆圈中剩下的数字（约瑟夫环问题）

先说了倒推法，最后剩1个数字，即安全位置为0，迭代计算出原队列中的安全位置；追问还有没有别的方法，又说了一个直接用[链表](https://app.gitbook.com/jump/super-jump/word?word=%E9%93%BE%E8%A1%A8)模拟的

8.[算法题](https://app.gitbook.com/jump/super-jump/word?word=%E7%AE%97%E6%B3%95%E9%A2%98)：[leetcode](https://app.gitbook.com/jump/super-jump/word?word=leetcode) 41 缺失的第一个正数

9.反问

三面计网自己感觉答得不太满意，[算法题](https://app.gitbook.com/jump/super-jump/word?word=%E7%AE%97%E6%B3%95%E9%A2%98)还可以吧，3小时后问到面试通过

————————————————

总结：

投完简历自己都忘了🤣，接到约一面电话猝不及防，好久没面试都快不会面了，于是面试前一周恶补了计网、OS、[算法](https://app.gitbook.com/jump/super-jump/word?word=%E7%AE%97%E6%B3%95)数据结构和C++，但没来得及[刷题](https://app.gitbook.com/jump/super-jump/word?word=%E5%88%B7%E9%A2%98)，导致一面[算法](https://app.gitbook.com/jump/super-jump/word?word=%E7%AE%97%E6%B3%95)不太理想，所以二面三面前狂刷了好多[算法](https://app.gitbook.com/jump/super-jump/word?word=%E7%AE%97%E6%B3%95)，大概[leetcode](https://app.gitbook.com/jump/super-jump/word?word=leetcode)100+道，[剑指offer](https://app.gitbook.com/jump/super-jump/word?word=%E5%89%91%E6%8C%87offer) 50+道这样子

感觉[客户端](https://app.gitbook.com/jump/super-jump/word?word=%E5%AE%A2%E6%88%B7%E7%AB%AF)可能还是会比较看重计网，三面下来OS几乎没问几个问题，C++也问的不多。还是要加强计网的学习，另外要勤[刷题](https://app.gitbook.com/jump/super-jump/word?word=%E5%88%B7%E9%A2%98)保持手感，没答上来的题下了面试要快点查了补上

就酱，等还愿😆

————————————————

7.10更新

来还愿，刚刚收到offer mail啦

祝大家都可以拿到想要的offer嗷

————————————————

7.12更新

统一回复and更正一下关于部门的问题，最后确认了是西瓜视频哈
