腾讯一面面经c++

1.写代码:实现扫雷布局,给定棋盘的长和宽,以及炸弹的个数,返回一个矩阵
使用最直白的方法写出来了,但是效果不好,每次都要计算当前相邻的8个格子的炸弹数,会重复计算。
面试官让我去看看“洗牌算法”
2.vector的实现原理,vector容器push_back的平均时间复杂度(O(1))
3.map和unordered_map的实现原理(红黑树和哈希表),他们两者有什么区别?(O(1)和O(lgn))
既然unordered_map这么优秀,为什么还有map,map的应用场景?哈希如何解决冲突?
4.字符串如何哈希,(MD5),后面好像问了什么,但是不记得了
5.字节序了解吗(大小端),如何确定电脑的大小端(测试一下),大小端为什么不一样(处理器厂商),大小端判断通常运用在什么场景(网络通信,不确定对方的大小端)
JASON协议传输会有大小端的问题吗?XML会有吗?(其实我没有用过JASON和XML。。。所以就过了这个问题)
6.TCP如何保证可靠传输,TCP为什么要三次握手
7.int *p=NULL;*p=0;会报编译器错误吗?不会。运行时会出错吗?会。报什么错?(写入访问权限冲突)程序报的错还是内核报的错?内核
#面经##腾讯##C++工程师##校招#
全部评论
楼主你好,请问你是实习、校招还是社招?
点赞 回复 分享
发布于 2020-08-14 14:08
楼主第7个会报错吗?
点赞 回复 分享
发布于 2020-08-14 17:47
扫雷这个应该用雷点去更新周围的非雷点吧,这样次数会少很多
点赞 回复 分享
发布于 2020-08-14 18:00

相关推荐

努力成为C语言高手:质疑大祥老师,理解大祥老师,成为大祥老师
点赞 评论 收藏
分享
一颗宏心:华为HR晚上过了十二点后还给我法消息。
点赞 评论 收藏
分享
7 33 评论
分享
牛客网
牛客企业服务