2021 字节跳动 客户端开发-移动OS 实习面试
在牛客学到很多 希望能用自己的实际经历来帮助大家!主要反馈一下实习 一面 二面 的过程 还有一些感悟
offer应该是凉凉哈哈哈哈 毕竟准备时间不充分 还是要刷题 刷题 刷题!!!!!!!!!!!!
另外刷题不在数量 在质量!!!!!用我们多年学数学(高数)的经验去做算法题完全OK!!!!!!!!!
(本人 本科双非 硕士某985 机械电子研一在读 转行自学计算机)
2021 6.02 一面:
1、半个小时先做题
Leetcode 61给定一个单链表 输出该链表右移K位的新链表
leetcode 215给定一个数组 输出数组里第k大的数字
注意:面试的时候 一般不允许使用sort 直接排序 要用自己学过的排序算法实现!!.
感受:这两个题我都还没做到 当时挺慌的。然后就开始用自己熟悉的方法进行实现,最后其实都没做出来,一直在按自己的思路实现。当然了,思路没有太偏。30min到了开始向面试官说自己的实现,准备用什么方法。然后就这样结束了 当时感觉就凉了 我是很愧疚的哈哈哈 面试官很好 。
2、项目 简单介绍一下项目的实现 没深挖!两分钟左右;
感受:其实关于项目的准备我是符付出很多经历的,介绍项目的时候我时不时的问一下面试官要不要详细介绍一下程序模块的设计 可是他说简单说一下就好!! 然后我就介绍了一下设计流程 细节没展开 我介绍完 面试官就说问你几个基础知识吧!!!可能是实习要求不高哈哈哈哈哈
3、 基础知识(一些重要的关键字要熟记) 剩余的所有时间都在问基础知识
Voliate
Static 作用域 全局、局部变量
动态链接和静态链接
多态
Auto 和普通的变量初始化方式有什么区别?
指针和引用
大端序和小端序
Const 和#define
C++模板在汇编阶段还是运行阶段?
八股文
三次握手 四次挥手
智能指针的底层实现
子网掩码
简单的sql :查找表student中分数在90-100之间的学生信息
感悟:
基础知识的话就得好好准备!!在把握重点的情况下 尽量全面!然后对于自己很熟的知识点 一定要想法进行插入介绍.这就考验你的语言艺术啦哈哈哈 比如:问你https你先问一下面试官 我可以先从http介绍开始 这样你就可以多介绍一些了嘛!但是要在自己对这些知识熟悉的情况下哟 毕竟面试官不一定是想让你完完整整一字不落的答出他的问题。和面试官进行互动和进行知识的迁移 我觉得都是面试的一些技巧哈哈哈 不知道大家意下如何?
一面结束我是准备放弃了!准备去健身去了哈哈哈
晚上九点多 正贴着面膜刷抖音呢!HR小姐姐告诉一面过了 约好二面的时间 吓得我赶紧背着电脑去实验室学习去了!!!!!既然机会就在眼前,为何不争取一把??!!!!!!!!!哈哈哈哈哈
这次可惜呀!!!!!
1、上来还是做题,时间没规定,面试官一边工作一遍面。
用两个栈实现一个队列。easy题 不过我有点儿记不清了 哎!!!
又按自己的思路写 思路没啥问题 最后调试还是没成功 有点儿慌 ~~~~~
2、接着又是基础知识了 全程没自我介绍 没问项目 没问数据库 (这些我都是认真准备过的 有一丢丢可惜
C++基础只问了熟悉的数据结构,vector list 数组(对数组的理解有错:插入元素时候不是之后的元素都往后移)
数组和链表的区别
TCP/IP头部 没记住
HTTP HTTPS 加密原理 HTTP完整的传输过程
进程 线程的特点 线程同步 锁 如何实现共享内存 临界区 临界资源 多机分布 多核分布
线程池 问线程的居多
数据库没问
项目没问
总结:分人 灵活 深入 底层
对于一些资料上的名词一定要确认无误 一定要保证自己说的90%正确
里面提到的知识点和名词一定要提前了解一下
以免不知道自己说的是啥 被面试官揪出来问就很尴尬哈哈哈哈
明年继续面!!!毕业去大厂!!!!!!!!!!!!!