大三实习生,字节跳动面经分享,已拿Offer

计科大三学生,无实习无项目经历成绩普通

一面3.9:40min

HashMap和ConcurrentHashMap的区别

vector,list

C++多态,虚函数机制

进程通信

进程线程差异

TCP三次握手四次挥手细节

算法题:最长不重复字串(HashTable,O(N))

面试官人非常好,有一些遗漏的知识点会给你指出来并且讲解,也很耐心。

二面3.15:1h

Java多态(看程序说结果,比较复杂,还考察了override和overwrite)

二叉搜索树

B树b+树

红黑树删除算法

用互斥锁实现读写锁,写者优先

算法题:有100个方格,每个上面有毒蘑菇和体力蘑菇,毒蘑菇减体力体力蘑菇加体力,当前体力是能跳到的最远距离,求是否能跳到最远方格,如果可以,求落在第100格上的最大剩余体力

二面面试官挺严肃的,回答问题不会肯定或者否定你,听完你的回答就会直接继续下一个知识点,节奏非常紧凑。面完我一度以为凉了,结果十分钟后hr打电话通知三面,而且三面面试官说前面的两次面试官评价挺高。所以小伙伴碰到比较严肃的面试官也不要灰心,平常心回答就好

三面3.17: 1h

服务方法调用

RPC/Netty

序列化/反序列化

10亿找Top10000,需要考虑分片,如果用最小堆需要考虑高效合并

要考虑等待时间且带有优先权的打印机,设计数据结构使打印任务高效

二十四点牌

在三面开始的时候面试官问了能够实习的时间和想要实习的地点,猜测可能是leader直接面试(最后也正好去了这个面试官在的城市),人很和善,不过问题都不是我准备过的基础题型,碰到的时候还是有一点束手无策。

3.27收到offer啦!等了快两周终于拿到心心念念的offer哈哈!

其实准备字节跳动的面试还是需要着重准备基础部分(数据结构、算法、操作系统、计算机网络),另外对做算法题的要求很高,如果在看到题目的时候能直接给出这个题目的最优时空复杂度解法,面试官对你的评价会很高。

如果基础知识比较扎实了,可以看看网络上的面试经验,找找自己不会的知识点,查漏补缺。

也祝大家都能拿到心仪的offer!

絮叨

首先恭喜一下读者,让敖丙我去,我是肯定面不过,这些好多都没准备过,我之前说校招比社招难,真的没框你们,所以仔们,真的得好好准备呀。

说一下最近我的事情吧,最近小忙,文章输出频率不比以前了,而且最近熬夜熬多了好像头发少了,我后面还是控制下熬夜的事情。

最后发个意见征集吧,不知道写啥了,我在写一个分布式锁的,下周发出来,其他就不知道了,你们留言看看你们想看啥,我看到感兴趣的我就写了。

春招结束我就会停止录制面试视频了,还是想搞点技术的,或者搞点生活的?

你们看看录啥喜欢看点。

絮叨

另外,敖丙把自己的面试文章整理成了一本电子书,共 1630页!目录如下

现在免费送给大家,在我的公众号三太子敖丙回复 【888】 即可获取。

我是敖丙,一个在互联网苟且偷生的程序员。

你知道的越多,你不知道的越多人才们的 【三连】 就是丙丙创作的最大动力,我们下期见!

注:如果本篇博客有任何错误和建议,欢迎人才们留言!


文章持续更新,可以微信搜索「 三太子敖丙 」第一时间阅读,回复【资料】有我准备的一线大厂面试资料和简历模板,本文 GitHub https://github.com/JavaFamily 已经收录,有大厂面试完整考点,欢迎Star。

<think>好的,我现在需要处理用户的查询,用户想查找关于嵌入式系统的面试经验和常见问题。首先,我要分析用户的需求。他们可能在准备嵌入式相关的面试,需要了解常见的面试问题以及如何回答,同时可能也想知道一些面试经验。 接下来,我需要查看提供的引用资料。引用1提到了车路协同V2X和嵌入式开发的面试准备,引用2是深圳嵌入式软件岗的经,引用3关于STM32的培训课程,引用4提到了const的面试问题,引用5关于微处理器的定义。这些引用中,引用2和4最相关,因为它们直接涉及面试问题和经验。 然后,用户的需求可能包括几个方:常见问题、解答技巧、项目经验、技术点准备。我需要将这些内容组织起来,确保结构清晰。根据引用2,面试中常问基础知识和项目细节,而引用4中的const问题是一个典型例子,说明面试官会深入考察基础知识。 用户可能还希望得到具体的例子,比如代码或问题解答,所以需要包含像const、volatile这样的关键字解释,以及RTOS、调试经验等。此外,项目经验部分需要引导用户准备项目描述,突出难点和解决方案,引用3中的课程可能对项目准备有帮助。 还要考虑用户可能的深层需求,比如如何展示实际操作能力,如何应对技术难题,所以需要包含调试技巧、协议栈问题等。同时,引用5提到的微处理器定义可能用于基础知识部分。 最后,生成相关问题时要覆盖用户可能关心的其他方,比如职业规划、公司业务了解、薪资谈判等,这样能全帮助用户准备面试。确保回答符合系统指令,使用正确的中文和LaTeX格式,引用标识自然添加。</think>### 嵌入式系统面试经验与常见问题解答 #### 一、基础技术问题 1. **C语言核心知识点** - **const与volatile的区别** - `const`表示“只读”,用于定义常量或保护指针指向的数据不被修改,例如: ```c const int *p; // 指针指向的内容不可修改 int* const p; // 指针本身不可修改 ``` - `volatile`告知编译器变量可能被外部因素修改(如硬件寄存器),需直接访问内存而非优化缓存[^4]。 - **内存对齐与大小端** - 内存对齐通过`#pragma pack(n)`控制,用于优化访问速度。 - 大小端问题需在跨平台通信时处理,例如: ```c uint32_t swap_endian(uint32_t data) { return (data >> 24) | ((data >> 8) & 0xFF00) | ((data << 8) & 0xFF0000) | (data << 24); } ``` 2. **嵌入式硬件基础** - **微处理器与微控制器区别** 微处理器(如x86)侧重通用计算,需外接外设;微控制器(如STM32)集成CPU、内存、外设,适合嵌入式系统[^5]。 - **中断处理流程** 包括中断触发、现场保存、ISR执行、中断返回,需注意**可重入性**和**优先级配置**。 #### 二、项目经验与实战能力 1. **项目描述框架** - **核心功能**:例如:“基于STM32U5的智能手表项目,实现心率监测与蓝牙通信”[^3]。 - **技术难点**:如低功耗优化(使用HAL库的休眠模式)、实时性保障(RTOS任务调度)。 - **调试方法**:逻辑分析仪抓取SPI时序、内存泄漏排查(通过`free()`前后对比)。 2. **RTOS相关问题** - **任务通信方式**:消息队列、信号量、邮箱。 - **优先级反转解决方案**:优先级继承(如FreeRTOS的互斥锁)。 #### 三、进阶问题与解答技巧 1. **协议栈与驱动开发** - **CAN总线配置**:波特率计算($T_q = \frac{1}{BRP \times f_{osc}}$),同步段占比调整。 - **TCP/IP协议栈移植**:需适配LwIP的`netif`结构体与PHY驱动。 2. **代码优化实例** - **空间优化**:使用位域(`struct { uint8_t flag:1; }`)替代布尔数组。 - **时间优化**:查表法替代浮点运算(如正弦函数预计算)。 ---
评论 262
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

敖 丙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值