阿里云对象存储CPP开发暑期实习一面凉经
自我介绍都没做就开始了😂时间大约45分钟
简历上的后端项目:
- 我看好像你们的项目结构是两个人做前台,一个人搭架构。那么后台基本都是你做的?(苦笑,不过我答了我觉得项目的架构更加重要)
- mysql的锁机制和隔离级别
- 怎么保证redis和mysql的一致性问题(我太菜了,没答出来,对不起)
简历上的程序分析项目:
- 为什么选择做程序分析?
- 项目相比现有实现的优点
答:我说了为什么用静态分析+标注的形式,而没有用静态分析+动态插桩的形式
逻辑题
- 不加锁的情况下,一个进程下的两个线程并发地对一个初始值为1的变量x做+1操作各50次(变量不加锁),求这个变量的最小值和最大值?
答:最大值明显是101。最小值那边我考虑了好多次,从一开始的101(对不起,我是***)到51(A线程50次操作全部被覆盖掉,B的50次没被覆盖)到3(A线程的49次被B的一次覆盖掉,B的49次被A的一次覆盖掉,感觉应该是正解)。
编程题
leetcode三数之和,不过改成找和target值最接近的一组。我做出来了,但过程中代码错误有点多(早上状态有点差+稍微有点紧张+菜),最后在面试官的引导下修改出来了。
总结
虽然总体上都答出来了,但过程相当曲折。面试官全程引导,在引导中解出了逻辑题,并修正了编程题的bug。面试体验挺好的。
在写的时候得知一面过了,开心。大家有兴趣cpp开发的可以投一波。我觉得像我这么菜的都能过一面,大家应该也没啥问题。
#阿里云实习内推##阿里巴巴##面试题目#