基本没有背任何八股...也没有啥面试经验,很焦虑,于是先约面试试水
### 视源股份 高性能计算 2024.12.17
**要求**: C++/CUDA/OpenMP/计算机系统结构
**面试问题**:
1. **线性表和链表的区别?**
内存空间连续,插入和访问
2. **一个数组拷贝到另外一个数组,怎么降低拷贝时间?**
类型的话考虑移动语义,避免复制,如果是整形数组的话,考虑SIMD
拷贝的过程当中有哪些基本操作?cpu-cache-内存
除了simd还有其他方法吗?不知道
3. **对计算机系统结构有了解吗?说下对CPU架构的理解吧**
cpu当中至少包括fetch code单元,alu计算单元,context(上下文,保存线程状态,寄存器单元,还有一些基本的存储空间(?)),cache(MESI)
4. **cpu保持运行需要的基本单元有哪些?**
fetch code, alu, context
5. **你对simd有了解吗?simd与openmp有什么区别呢?**
simd是底层实现,openmp是上层的封装,实际底层实现不一定是用simd
6. **你对进程和线程有了解吗?**
进程:分配资源的基本单位
线程:执行的基本单位
7. **C++多态了解吗?**
静态多态(函数重载),动态多态(虚函数机制)
8. **用纯C实现怎么实现多态?**
不会(怎么不多想一下呢,别急),还是不会
9. **如何用整数值找到一个函数(?)**
反问整数是啥,索引?(可以当作索引)
哈希函数当中的索引?根据哈希函数计算到对应位置
10. **你刚刚提到了哈希,你会怎么实现哈希?**
扯了一下基础的哈希结构(线性哈希?)
然后说了一下数据库当中实现的动态哈希
11. **读研期间谁对你的帮助更大?师兄师姐有什么可以分享的**
12. **人在哪里?实习在广州会有问题?**
13. **给你一个工作让你自己***会怎么处理?**
14. **高性能计算有兴趣吗?如果给你一个矩阵*向量,你会怎么去优化他?**
15. **矩阵乘法的复杂度多少?**(n^3) 矩阵n*n
16. **反问:继续深入高性能学习要怎么学习?**可以看一下刘文志的书
17. **高性能计算有什么吸引了你?**
18. **如果通过多久入职?有提前通知导师吗?**
### 赫鲁丝网络 游戏服务器端开发 2024.12.18
1. **上来先做6道题**
不检查正确性,只需要类似像leetcode那样写出来函数(现在想起来应该至少试试通过简单样例?),都比较基础吧
2. **计算机网络有学过吗?简单说下OSI网络七层结构有哪些?**
只记得TCP/IP的5层网络结构(说下)
3. **http在哪一层?http报文结构说一下**
应用层,不知道
4. **C++/golang都熟悉吗?**
C++更熟悉,golang不太熟(公司主要用golang)
5. **C++当中struct和class的区别是什么?**
6. **struct和union的区别了解吗?**
7. **关于stl相关的:vector当中resize和reserve的作用?**(是否会影响capacity和size)不了解就不问了
8. **list的底层数据结构了解吗**?(不了解)vector呢?
9. **项目:单机数据库,用过其他数据库吗?mysql?讲讲你怎么实现你自己的?**
10. **情景题:文本文件乱序数组,大文件(64G对16G内存),找到第k大的数**
11. **如果k大于这个分块大小(桶排序)**
12. **两个大文件,存储url,找到相同的url**
13. **raft协议的分布式系统,了解什么是竞选冲突吗?怎么解决的**
14. **反问:学习路线?**跟业务要联系,技术栈差不多,不要拘泥于课本,重点掌握网络相关的内容
------------------------------------------------------------------
第一家过了,后面这家大概率挂