什么岗位呀uu
1 3

相关推荐

📍面试公司:联想(Lenovo)🕐面试时间:2025年08月23日💻面试岗位:C++研发工程师❓面试问题:一、现代C++特性与语言演进 (C++11/14/17/20)1.​​右值引用与移动语义​​:解释std::move和std::forward的区别?完美转发是如何实现的?2.​​智能指针进阶​​:std::shared_ptr的线程安全性如何?std::weak_ptr如何解决循环引用?3.​​C++17/20新特性​​:谈谈你对std::optional, std::variant, std::string_view的理解。C++20的Coroutines(协程)有什么优势?4.​​类型推导与模板​​:auto和decltype有什么区别?模板参数包(Parameter Pack)如何展开?二、内存管理新范式1.​​内存池技术​​:如何自己实现一个内存池?2.​​检测与优化​​:除了Valgrind,还有哪些工具(如ASAN、MSAN)可用于检测内存问题?如何重载new和delete来跟踪内存分配?三、并发编程与现代多线程1.​​原子操作与内存模型​​:std::atomic<T>是如何保证原子性的?解释一下内存序(Memory Order):memory_order_relaxed、memory_order_acquire、memory_order_release的区别和应用场景。2.​​无锁编程​​:什么是无锁(Lock-Free)数据结构?尝试实现一个无锁的队列或栈。3.​​协程​​:C++20的协程底层机制是什么?co_await、co_yield、co_return分别做了什么?四、STL容器与算法新特性1.​​新容器​​:std::unordered_map的负载因子和再哈希策略是怎样的?C++23引入了哪些新容器?2.​​算法复杂度与选择​​:std::sort用的是哪种排序算法?什么情况下会退化为O(n²)?如何避免?五、系统设计与性能优化1.​​设计线程安全的LRU缓存​​:要求get和put操作的时间复杂度为O(1),并考虑高并发场景。2.​​零拷贝技术​​:如何在Linux下使用sendfile或splice实现零拷贝文件传输?3.​​高性能日志系统​​:如何设计一个每秒处理千万级日志条目且保证零丢失的采集系统?六、设计模式与架构演进1.​​现代C++下的设计模式​​:如何使用移动语义和智能指针实现单例模式、工厂模式?2.​​分布式系统概念​​:如何理解分布式缓存中的缓存击穿、雪崩和穿透?如何设计一个防护系统?七、手撕代码题目更新1.​​实现一个移动语义优化的字符串类​​(MiniString),要求支持拷贝构造、移动构造、析构。2.​​实现一个简化版的std::shared_ptr​​(MySharedPtr),模拟引用计数。3.​​实现一个线程安全的环形缓冲区(Ring Buffer)​​,支持多生产者和多消费者。🙌面试感想:联想的C++面试很​​现代化和深度化​​。面试官不仅考察传统的语言特性和底层原理,还会深入询问​​C++17/20的新特性、无锁编程、协程、高性能系统设计​​等前沿话题。手撕代码环节的题目综合性更强,常要求实现一个小型的数据结构或系统组件,并考虑线程安全和性能。项目经验部分问得非常细,要求候选人能清晰说明技术选型、性能优化证据链和故障排查路径。整体感觉面试官水平很高,乐于追问,氛围既有挑战性又很专业。
查看19道真题和解析
点赞 评论 收藏
分享
09-02 20:48
已编辑
蚌埠坦克学院 C++
无自我介绍 上来就是做题T1长链接转短链接,写一个简要技术方案要求:-输入长链生成短链(唯一、可还原)-查询短链是否存在看完需求后直接说用两个哈希表存储,保证可以正确跳转并且可还原为长链这时候面试官又说要抗高 QPS 和持久化存储这种典型 KV 还要抗 QPS,肯定是上 Redis 了持久化就是在 MySQL 建一张表存储长链和短链又追问这个短链是如何生成的(这里也是我傻逼了,忘记还有生成这一步了)想了想说用 MD5 哈希随机生成然后又追问怎么限制短链再 20 字符内,能否直接截断哈希后的值?答不行,这样很容易造成短链重复又问短链重复如何解决答通过再哈希生成一个新的短链面试官不太满意,说数据量大了之后,可能导致一次生成要多次哈希想了想非常有道理,答在短链头部添加一个 UUID,解决重复问题终于把这题过了T2题目看图吧,懒得描述了属于是看完就有思路的模拟题,但是不知道解法是不是好的答按长度原数组做一次排序,长度短的在前面,然后开一个哈希表,遍历数组时先枚举当前路径的所有子路径在哈希表中是否存在,存在则跳过,不存在就将其插入哈希表,这样的时间复杂度是 NlogN追问整体的时间复杂度呢?答排序时是 NlogN,遍历时是 N,所以整体时间复杂度为 NlogN然后说思路没问题,写一下代码吧写的时候发现,/ 之后的字母个数是不确定的,我不知道怎么正确截取每一部分,面试官就让我写一个 TODO 函数,把整体的代码实现了就行反问了解到部门是做基础架构的,具体是做哪一部分呢?有很多产品,计算、存储、网络、KV、Cache、框架、数据引擎,具体要看最后分到哪个产品如果到虾皮,能参与哪些工作?还是要看产品,不同产品做的事情不一样虾皮内部对 AI 的鼓励程度?很拥抱,公司给每个人都配备了 Cursor 账号,内部也会开发一些 Agent 以及 API GateWay相较于其他候选人,有哪些改进点?短时间暂时整理不出来,回头整理一下若此轮能过,还有几轮技术面?不确定,有可能直接是 HR 面最后又是经典感谢你的时间总结感觉二面就是在考察思维逻辑了,不像一面会去问八股应该是话说的最少的一场面试了,但是答得不好面试官也会引导,体验感不错另外,面试官长得挺熊系的更新9.2 收到感谢信
查看10道真题和解析
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务