头条游戏客户端面经

前一段时间面的,一面二面不难,答得还行,三面崩了,问的基本都不会,不过最后还是给过了。

一面:
1.如果要给软件加一个功能,是要用组合还是用继承
2.1000瓶水,有一瓶是毒药,你有10只小白鼠,喝了毒药一个礼拜后毒发,怎样在一周内知道哪瓶水有毒
3.字符串翻转 "i love you" -> "you love i"

二面:
1.virtual关键字和原理
2.虚函数可以是内联函数吗(inline和virtual一起用)
3.四种cast,分别是在什么时候确定的(编译期,运行期)
4.TCP和udp区别,udp什么场景下用,用udp如何保证可靠传输,有哪些方法

编程:找到数组第一个不重复的数,有什么改进空间吗
闲聊:实习做了什么,怎么给一些没有计算机背景的人介绍你实习做的工作
最近有玩什么游戏,从这些游戏你观察到什么现象
游戏的社交属性这几年为什么变强了

三面:
1.输出是什么

void* p;
cout << sizeof(p) <<endl;

2.自定义一个函数,参数任意,实现交换两个下述结构体指针的交换(不复制,只是两个形参指针的交换)

struct Node{
    int num;
    int* nump
}

3.实现链表单节点的删除
4.UNICODE/ANSI/UTF-8区别
5.下面两个结构体四字节对齐,sizeof大小多大

struct Node1{
    char c;
    int i;
}
struct Node2{
    int i;
    char c;
}

6.25匹马5个跑道,每次只能记录名次不能记录时间,最少比多少次能选出最快的三匹马

#面经##校招##字节跳动##C++工程师#
全部评论
是杭州的部门吗
点赞 回复 分享
发布于 2020-11-19 00:34
楼主你好,请问你是实习、校招还是社招?岗位是什么?开发的话,是Java方向还是C++方向?或者其他语言方向~
点赞 回复 分享
发布于 2020-11-16 14:10

相关推荐

机智的大学生这就开摆:有些地方描述有点儿空泛。传感器直接说清是哪款,要不然对方都不知道问啥。然后freertos那里的描述也是,加上freertos就实现了实时性吗?可以说基于freertos的调度,结合xxx优化/xxx技术实现了xxx检测的实时性。同时freertos也能实现异步io,也能实现灵活的并行架构和高并发。 检测时效性的问题要考虑哪里需要时效性,摔倒检测需要通过中断实现,至于温度这种大惯量就不需要,方案细节理清楚。然后freertos那里提升响应速度用的消息队列不是太合适,可以说是用的notify反正和消息队列差不多,或者说指针传参来优化消息队列的值传递进而提升线程间通信效率。 但凡是搞过开发的看一眼你的简历就知道有问题了,需要重新整理技术路线优化一下。首先搞清楚技术路线,描述好软硬框架,体现性能优化/低功耗等。例如后续针对xxx功能进行了xxx的优化,实现了xxx成果(这里可以展开描述你使用的工具链,你是用的串口调试助手还是RTT来打印日志,有没有用systemview来优化任务的优先级大小避免乱序调度,或者使用了Ozone调试定位问题等)。 描述问题上例如视觉项目那里,基于xxx通信接口编写xxx传感器的驱动,实现了xxx功能,并提供了xxx数据处理/稳定性/精确度/异步调用。或者也可以统一描述为基于xxx、xxx、xxx通讯协议编写xxx、xxx、xxx传感器的驱动。后续再单独给这些传感器的数据处理/优化等进行描述。 最重要的一点,实习栏太少了,五六个月不至于只干了这么点,把实习项目描述清楚,把自己会的不管有没有让你做都写进去。你写了实习这栏,内容就不能比剩下的两个项目差多少了。 最后就是看看岗位jd,跟着描述修改你的专业技能以及项目的描述,这样被回复的概率才大。 希望你早日找到理想工作!祝好
点赞 评论 收藏
分享
评论
5
33
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务