阿里蚂蚁金服C++1、2面

一面:简历评估
1:实习经历,简单问了一下学的rtmp协议,讲了直播时,用udp与tcp区别,rtmfp为什么用udp
2:tcp基础知识,问了三次握手序列号问题
3:stl中map为什么用红黑书
4:用C++哪个版本,使用C++11哪些功能
5:简单介绍一下快排
6:linux虚拟内存分布,局部变量在哪个段
7:系统设计,单机图书系统,只考虑书名,所有数据可以存在磁盘上,但放不到内存中,实现书名的查找插入删除
8:数据库,不了解

二面:
先问实习(主要问rtmp协议和直播方面可以做的优化,大概聊了40分钟)
你看rtmp协议有啥感受,rtmp为什么适合多媒体传输,说了主要是分组和流的复用,可以用来实现不同类型消息之间优先级发送。
如何要在tcp上实现流复用,怎么实现?然后聊了很久关于rtmp及协议设计一些细节(其中包括粘包问题等等)
问:你觉得在整个直播过程中,那些可以优化的地方,聊了动态码率实现,丢包等问题
问的整个过程主要是问些能触发你思考的问题,给你提供一个场景,让你给出个解决方案。

然后问快排与归并排序(接近20分钟)
快排与归并比较:快排比归并快,归并比快排稳定。
然后分析了2者时间复杂度,问什么快排比归并快。
归并可以进行外排序,快排不行。
归并空间复杂度为O(n)
如果是链表,会有什么区别:
我的回答:归并空间复杂度会变成O(1),二者时间复杂度不变。
面试官补充:快排在数组情况下,由于计算机内存访问局部性原理,会比归并在这方面更快,而在链表中,这种优势不再存在,
加上归并空间复杂度变为O(1)和快排的稳定性,所以一般在链表排序中都使用归并排序。
补充:如果进行递归版的快排,可能会出现栈溢出情况。

不同排序各有优势让我实现一个通用排序库,
我:数据比较小用插入,中等用快排,比较大,用归并。
问:为什么比较小是用插入而不是冒泡
想了几分钟,面试官说过了。

问了map实现,几种实现好坏。

了不了解tcp源码,没看
poll,epoll效率上差距体现在哪(2各方面:等待队列回调函数和系统调用数据拷贝)


开始问C++(答得很差)
C++11用过没,就跟他讲了一下右值引用的作用,还准备继续问下去,我说没了结果其他功能。

模板:说了一些模板元编程坏话,感觉面试官不是很开心

3个类A类继承B类和C类,每个类中都有个名字不同虚函数,问内存布局(忘了,给了一种我觉得可能对的(其实是错的)模型,并分析了一下,面试官笑了)
delete数组为什么加[],没回答上来,也分析了一通,面试官说思路大概正确,然后今天就聊到这里。


昨天刚面的2面,最近在复习,没时间整理面经,这是面完粗略写的,比较简陋,还有很多错别字,先发出来,大家不要介意。
全部评论
是校招还是实习?
点赞 回复
分享
发布于 2018-03-21 20:25
今天在群里看见这个面经了,看来是一个学校的
点赞 回复
分享
发布于 2018-03-21 23:13
博乐游戏
校招火热招聘中
官网直投
蚂蚁金服有c++岗吗?还是你投的java岗,问的c++
点赞 回复
分享
发布于 2018-03-23 10:33
楼主过了咩?
点赞 回复
分享
发布于 2022-03-11 16:38

相关推荐

1.项目2主要负责是哪块?2.堆场的数据是怎么拿到的?3.深拷贝和浅拷贝的区别?值传递和引用传递的区别?使用的时候有什么注意点?4.是否了解原子操作?i++是否是原子的?(不是,分为自增和复制两步)那i = i+1是原子的吗?(是)5.进程和线程的区别?1个线程挂了,其他线程会挂吗?什么时候用线程,什么时候用进程?举个例子。6.4核CPU一般开多少个线程上限比较好?(懵)线程之间通信有什么方式吗?7.多条线程对同一个变量进行操作的话,线程1赋值1,线程2赋值2,线程3赋值3,最后变量值是多少?8.如果数据库表很大,用户需要多次查找,应该对数据库层面做什么?(索引)9.索引是越多越好吗?不是,为什么?10.查一个数据用like的话走不走索引?11.数据库层面,对商品秒杀,用户买了商品库存-1,钱包金额扣钱,买成功的话涉及库存减少和金额的变化,当下单时库存减少,但付款没有成功,怎么办?(保证减库存和扣钱操作的一致性,要保证同成功同失败)12.事务的隔离级别?ACID?13.redis数据库和缓存不一致怎么解决?那先操作数据库再删除缓存,如何保证这两个操作都能成功?(加锁)14.知道什么是区块链吗?15.对排序算法了解吗?知道哪些?说下快速排序的思想?16.100个int型数据(<100w)进行排序,要进行升序排序,怎么做最快?反问:可以从哪方面再进行学习?答:实习生的话主要还是对于java基础、操作系统、数据结构层面基础的考察,因为项目涉及的一般比较简单,所以基本会在基础方面对比。(说的非常委婉了家人们...)面试官很好,不懂的地方还会提醒,很耐心,八股还得再背背,经不起考验TAT #蚂蚁一面#  #软件开发2024笔面经#
点赞 评论 收藏
转发
2 44 评论
分享
牛客网
牛客企业服务