网易雷火(游戏服务端开发实习)和字节系统架构实习

还愿

网易雷火一二面

一二面混在一起写:

        首先简单介绍了一下公开课项目,然后问了虚函数机制(重点提了下多继承)、系统调用过程、IO复用差异、tcp协议问了些、然后是数组和指针在形参上混在一起的sizeof的区别(还加了模板、没搞明白)、然后是malloc和new差异、智能指针、malloc能重载吗(wtf)

        还有一个问题是tcp是面向字节流的含义是啥?

        可能是非科班吧,问的不难



网易雷火三面

        三面问的还是比较细节的。

        首先看我写了csapp的proxy lab,直接拿这个开问,多次解释这是去年初学时写的玩具中的垃圾,还是扯了3-4分钟。然后就是延伸开,问了网络编程并发模型,例如fork的多进程,多线程,线程池是一般怎么实现的,还有没有其他模式(reactor),然后问Nginx(不会)

        然后问了tcp,假设需要发一个struct,直接send有问题吗?之后反应过来,硬要在应用层做一个缓冲区处理。然后问了tcp内部缓冲区的一些细节,例如write干了啥(例如只是拷贝到协议栈内部缓冲区并没保证发送)。

        然后问了C++一些问题,例如函数中static变量初始化几次,从汇编角度怎么看,当时没答好。然后问了有没有了解内存分配器,回答了jemalloc这些,可能还需要深入看一看

        然后问了下玩啥游戏之类的,闲聊。

        只记得一半的问题,反问后面试官建议广度需要提升,深度勉强合格。


然后过了几天,就hr面了,然后听语气应该过了


字节(系统架构一面)

首先扯了下金融相关的实习

然后依次是:

  • c++堆和栈的区别,然后在调用函数时栈一般有哪些操作(就压栈啥的),然后栈上除了局部变量还有啥(比如上一个栈帧的地址)

  • 虚拟内存介绍下

  • 缺页异常机制

  • tcp、udp介绍下,拥塞控制

  • dns两种查询介绍下

  • 算法题:topk和层序遍历变形

字节(系统架构二三面)

二面有些忘了,首先是问了些mmap的细节,比如刷新的时机。然后问了topK和topK个高频元素(一共1000亿个数)。然后扯到了IO。然后写了一个链表归并排序的应用变形(就一个主链,每个元素都对应一个链表,然后主链和子链都是有序的),先是基本的从左到右归并,提了下优化(就是两两合并,然后在合并,类推),然后要求计算时间复杂度。后面问题不记得了

结果还有三面

三面纯算法面,显示一个和逆序对差不多的,就是n个元素,乱序且可能重复,要求找到所有的(i,j)对使得i<j而且nums[i] == 2*nums[j]。用暴力做法做了下,优化一下子没想出来,太紧张了。然后面试官看我最初用dp做,就问了下0-1背包,用迭代秒了,然后问用递归写一下,然后问哪个快。一下子没反应过来,后来发现递归计算次数少(有些点没计算)。

然后,,然后三面就结束了。

然后今天hr面了,许愿能过吧
#实习##网易##面经##游戏客户端开发工程师##字节跳动#
全部评论

相关推荐

第一题,直接把所有年龄的情况列举出来第二题,动态规划int&nbsp;main()&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;a,&nbsp;b;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;全选&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;选择单个&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;复制所选&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;粘贴所复制的文本&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;T; cin>>T;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;maxOP&nbsp;=&nbsp;0;&nbsp;&nbsp;&nbsp;&nbsp;vector&nbsp;OP(T,&nbsp;0);&nbsp;&nbsp;&nbsp;&nbsp;for(int&nbsp;i=0;i cin>>OP[i];&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;maxOP&nbsp;=&nbsp;max(maxOP,&nbsp;OP[i]);&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;vector&nbsp;dp(maxOP&nbsp;+&nbsp;10,&nbsp;INT_MAX);&nbsp;&nbsp;&nbsp;&nbsp;dp[1]&nbsp;=&nbsp;0;&nbsp;&nbsp;&nbsp;&nbsp;dp[2]&nbsp;=&nbsp;3;&nbsp;&nbsp;&nbsp;&nbsp;//dp[8]&nbsp;=&nbsp;8;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;dp[9]&nbsp;=&nbsp;10;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;dp[9]&nbsp;=&nbsp;4&nbsp;+&nbsp;3&nbsp;+&nbsp;1&nbsp;(3&nbsp;+&nbsp;3&nbsp;+&nbsp;3)&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;1&nbsp;=&nbsp;0&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;2&nbsp;=&nbsp;3&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;3&nbsp;=&nbsp;4&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;4&nbsp;=&nbsp;&nbsp;&nbsp;&nbsp;for(int&nbsp;i=3;i&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for(int&nbsp;j=2;j&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(i&nbsp;%&nbsp;j&nbsp;==&nbsp;0)&nbsp;dp[i]&nbsp;=&nbsp;min(dp[i],&nbsp;&nbsp;dp[j]&nbsp;+&nbsp;(i/j)+1);&nbsp;//如果第j是第i的倍数,可以累计(i/j)个i&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dp[i]&nbsp;=&nbsp;min(dp[i],&nbsp;dp[j]&nbsp;+&nbsp;(i-j)&nbsp;+&nbsp;2);&nbsp;//这个后面才想到,必须要加这个,这个表示第i个可以使用单个复制粘贴到第j个&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dp[i]&nbsp;=&nbsp;min(dp[i],&nbsp;1&nbsp;+&nbsp;i);&nbsp;//第i个使用1个来解决&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;for(int&nbsp;i=0;i&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout&nbsp;&nbsp;&nbsp;&nbsp;}}第三题,没想到暴力也能过,直接暴力贪心,选取最大没访问过的房间攻击或者直接加当前战斗力的1/10,暴力就可以。第四题,模拟永杰无间,题目太长,就是模拟题,没写直接交卷了。
投递网易雷火等公司9个岗位
点赞 评论 收藏
转发
1 9 评论
分享
牛客网
牛客企业服务