美团后端开发工程师一面凉经

1. 项目相关。

2. define的使用场景

3. #define string char*有没有问题

4. 声明和定义的区别

5. .h文件和.c/.cpp文件的区别

6. 能不能#include<.c/.cpp>

7.
class A;
A getA() {
     return A();
}

void func(A a) {
    a.xxx();
}

int main(){
    func(getA());
    return 0;
}

问A被构造了几次

5. 写代码检查系统是大端还是小端
我用的union,不过输出是一个看不见的字符
union daxiao {
    int a;
    char b[4];
}

int main() {
    daxiao c;
    c.a = 1;
    for (int i = 0; i < 4; ++i) {
        cout << c.b[i] << endl;
    }
    return 0;
} 
不知道错哪里
8. 熟悉的数据结构
9. Map的底层是什么?
我回答红黑树
10. 为什么用红黑树不用哈希表?

11. 红黑树怎么遍历?

12. 哈希表不能遍历吗?

13. 哈希表解决冲突有哪些方法?

14. 开放定址法中,如果两个key不一样但是哈希值一样,其中一个被分配到对应的哈希值内,这一个被删掉了之后,另一个还能被找到吗?
在上一个问题中我回答了几种,面试官问了开放定址法怎么解决冲突,我以线性探测法为例,如果当前哈希值已经有元素的话,会依次向后寻找空位放置元素。然后引出此问题。

15. socket的调用

16. socket每收到一个syn报文就分配一个新线程吗?

17. (1ull<<33)&(1<<31)=?

18. 手撕代码,ipv4地址转数字。


#美团一面##面经##校招##美团##C++工程师#
全部评论
我的问题跟你一样,而且我也是东南的😂
1 回复 分享
发布于 2021-08-20 09:31
祝楼主好运,也在这里打个广告,虾皮校园大使内推码:DSWj15Rz  可私聊我进群,我会分享笔经面经和之前整理的其他人的笔面经
点赞 回复 分享
发布于 2021-08-19 21:26
大小端应该是输出的ASCII码,没对应字符,所以是空的
点赞 回复 分享
发布于 2021-08-19 22:24
union daxiao { int a; char b; }; int main() { daxiao c; c.a = 1; cout << (c.b == 1) << endl; return 0; } 改成这样就行了,返回1是小端,0是大端
点赞 回复 分享
发布于 2021-08-19 22:58
凉了会有感谢信吗
点赞 回复 分享
发布于 2021-08-20 08:37
感谢分享,祝楼主找到心仪offer
点赞 回复 分享
发布于 2021-08-20 12:06
所以请问第7题a构造了几次
点赞 回复 分享
发布于 2021-08-21 14:08
为什么后端不是问java
点赞 回复 分享
发布于 2021-08-23 21:54
楼主开放定址法那里是找不到了吗?因为删除了就没有哈希冲突了?
点赞 回复 分享
发布于 2021-08-25 18:19

相关推荐

不愿透露姓名的神秘牛友
昨天 14:43
吐槽一下,干设计,公司是互联网小公司,就几个人,然后今天老板突然发通知不给戴耳机,直接给干懵了,纯纯在搞心态啊
小火柴燃烧吧:公司领导一旦把精力和目光放在如何严格管控员工而不是如何拓展业务和研究项目,就走不远了
点赞 评论 收藏
分享
评论
5
22
分享
牛客网
牛客企业服务