5.26日 两个多小时
我心里:根本没投啊,什么鬼,突然想起来是3月投过一次提前批,忘记啥部门了
也不知道是啥部门捞?找到前面面过蚂蚁的C++笔记,一起发吧
-
个人背景介绍
-
搞过中间件没(没有)
-
C和C++语言区别
-
简述八大排序
-
手撕快排,时空复杂度
-
将快排的递归写法改成非递归写法
-
手撕一个字符串字典加密
-
手撕:
一个有序的数组(事先不确定升降序)中混入了一个不符合次序的错误数字,请一个c函数将它找出来。 例如 89,75,56,34,54,16,10 ,9,-5输出54
-
手撕:合并两个有序数组,只搞出来O(2N)的(双指针),卒
-
类中自生成的函数有哪些,构造函数和析构函数
-
static的几种用法和作用
重点怼静态成员函数,给场景判断
- HTTP报文格式
- C++异常处理,给了个场景题,怼了半天,卒
-
TCP和UDP的区别
-
简述虚函数的作用和实现
-
三次握手的过程,为什么三次握手可靠安全?
-
进程和线程的区别
-
LORA底层实现
-
MYSQL中实现网页翻页的话怎样写SQL语句
-
重载和覆盖的区别
-
C语言中printf中无限参数的问题,怎样实现?
-
C语言中struct字节地址对齐
-
内存泄漏怎么避免(自己检查+工具检查)
-
Linux环境下调试的方式
-
学过什么设计模式,简述
-
平常看什么书
-
自己的优点和缺点
- 学过NLP没(没有),学过概率论没
5.27 一小时
- 数据库常用优化方法
- 二叉树的前序中序后序遍历
- 线程、进程和协程
- B+树原理
- 红黑树原理
- TCP三次握手的过程
- 拥塞控制
- 手撕快排
- 数据库四大隔离级别
- 死锁的产生条件
- 怎样预防死锁
- ACID原则
- 分布式并发的一个啥,没听说过,卒
- 说说你做的项目(说了十分钟,面试官面无表情说嗯嗯,卒)
- 两道算法:
//评测题目: n个数,每个数都不大于n,需要写一个算法,把第k大的数找出来,算法复杂度要求O(n)int func(vector<int>& v,int k){vector<int> temp(v.size(),0);for(int i=0;i<v.size();i++){temp[v[i]]++;}for(int i=0;i<temp.size();i++){if(temp[i]>0){while(temp[i]!=0){temp[i]--;k--;if(k==0)return i;}}}return 0;}
// 10级台阶,你每次走1步或者是2步,写个算法,把所有的走法打印出来// 走法示例:1111111111,22222vector<vector<int>> ans;vector<vector<int>> func(){vector<int> v;help(v,10);return ans;}
void help(vector<int> v,int n){if(n==0){ans.push_back(v);}return help(v.push(1),n-1)&&help(v.push(2),n-2);}
- 你们是做啥的?啥部门?
(真是让人啼笑皆非的,我面到现在都不知道啥部门捞……)
答:达摩院,智能机器人NLP(卧槽,那打扰了,为什么盯上我???。。。刷KPI吗???) - 几轮技术面?
答:四or五轮(果然达摩院……)
- 对我的评价?
答:代码写的还行(暗讽前面隔离级别啥的没答全?卒)
三面:主管面 四十五分钟
- 自我介绍
- 为什么不读研?
- 你怎么是99年的,是不是提前读的大学?
我:???(这么菜会是提前读的么……)
- 讲一个项目,一直深挖,最后叫我说出框架图?
我以为是流程图?然后讲了十分钟,小哥好像不太满意,解释说流程图和框架图是不一样的
卒……
但是最后小哥安慰我说这东西很多搞技术的也搞不清楚,没事……(我:???)
- 开源项目,开源语言,开源源码?
我说看过Go语言,muduo…… - 看过Redis没
没有,卒 - 三月有一次面试记录,记录不好,为啥
(因为菜,卒) - 反问:后面还有几轮面试
一轮交叉面,一轮HR面 - “前提是我这边如果通过的话”
哦哦,那没事了
达摩院这种级别的我还是高攀不起,太菜了,可能不会有下一次更新?溜了。。。
四面 交叉面 四十五分钟
- Go、Python、C++各自的特点,给了一个项目场景怎样选择语言
- 算法工程师和开发工程师怎么选(我学B乎吹了一波算法工程师首先是工程师,小哥表示很赞同)
下面是蚂蚁C++的,时间恐怕是2月or3月份?当时记的笔记:
1. 昨晚考的咋样?(只有30%AC,菜的一批,佛),先自我介绍一下
2. 成绩不错,问我有没有上研打算?
3. 开始说项目
4. 你这项目里用到OpenCV,具体哪些?
5. TCP和UDP区别
6. 数据库隔离级别
7. 数据库使用过程中遇到了什么困难(老实说当时数据就几百个没遇到特别的困难)
8. SQLite和MySQL的区别
9. C++智能指针
10. new与malloc的区别(说了四五点,小哥笑着说够辣够辣下一个)
11. 虚函数(说的结结巴巴的也没怪我gg)
12. Linux用过吗?用了些啥
13. 怎样杀死一个进程?(先ps再kill)
14. C++编译的过程
15. 动态编译和静态编译
16. 多线程会出现什么问题(我说了进程通信巴拉巴拉)
17. 我说的是线程,你用的时候有什么问题?(我说了Qt的signal……),其他也没用过吗
19. 原子操作(回答的不满意)
20. 如果有一百个进程去访问一块资源变量,同时进行++操作,会出现什么结果(说了锁机制)
21. 如果三个进程同时访问一个资源变量,会出现什么情况?(说了一通,没回答到点上,小哥说原子操作用的这呀!我赶紧说对对对……gg)
22. 你搞了这么多机器学习,为啥不接着上研做ML
23. 反问1:你们部门做的是啥呀(数据库)
24. 反问2:你们这个数据库是基于MySQL的还是从头开始写的?
25. 反问3:为啥淘宝比支付宝慢很多,和数据库有关吗?
26. 小哥解释了一通开始反杀:为啥第二次打开页面会比第一次快?
27. 反杀2:浏览器输入一个URL会经历一些什么步骤?
28. 反问4:你觉得我有哪些需要改进呢
29. 你的博客网址是啥我看看……
全部评论
(3) 回帖