好未来 - HPC算法工程师 - 一面
面试官先介绍本次面试流程:C++基础知识;项目经历;两道力扣题目。
- C++ 基础语法
- C++三大特性。
- 虚函数机理。
- 虚函数实际应用场景。
- STL 容器有哪些;一些容器的特点;使用过哪些算法;迭代器了解吗。
- 口述 10 w 个数找 top100 方法,多种方法介绍;复杂度分析。
- 围绕项目问 CUDA 基本知识
- 分支分散
- Bank 冲突
- 调度过程
- 优化策略
- 给两个力扣题二选一。都是简单题。
- 买卖股票(麻了,题目看都不想看😅)
- 环形链表(这是想放我过?😅)
- 几个有意思的事情。
- 选了环形链表,说是快慢指针法,开始写。然后,怎么运行都不对,调试发现 `ListNode* fast = head->next` 运行的结果是 `f = {}`😅我真的会谢,当时觉得铁出 bug 了,但是又不敢跟面试官说平台有问题。最后没做出来,回去在力扣和牛客上都试了试,一摸一样的代码光速通过😅
- 面试官了解我的专业领域,第二个项目直接没问😅
- 面试官精辟的指出我的一些算子优化技巧部分是自己实现的,部分是背的😂;精辟的指出我应该在投其它公司,然后简历上很多东西没写😂。
- 为什么考数据结构与算法。前两年招的人只会深度学习,面试答得很好,实际进去了数据结构与算法稀烂,所以这两年增加了这个要求😅。
- 面试官主动给了下场面试的建议,我都惊呆了。建议我回答问题言简意赅、直接切入重点,不用考虑到面试官可能不了解而铺垫解释那么多。下场面试 C++/CUDA,项目,数据结构与算法都会面😅。
- 面试管还拿自己举例子,说自己有时候表述不言简意赅、表述能力差点,让我也多注意。可能他的领导平时就是这性格,所以需要特别注重这个?跟我导师一个风格,我面试还想着多拓展表现,我看不用这么考虑了😅。这也为下一个面试官的个人风格提供了信息,可能是他的小组领导。
面试官说联系 HR 给过了,让等 HR 消息。