网易雷火 面试准备

first one

一面
自我介绍
能实习多久 玩过哪些游戏 有没有网易的
介绍一个你自己的项目

洗牌算法 时间复杂度
洗牌算法是将原来的数组进行打散,使原数组的某个数在打散后的数组中的每个位置上等概率的出现,刚好可以解决该问题。
https://blog.csdn.net/qq_26399665/article/details/79831490

快排的实现和优缺点
优缺点:
优点:平均性能好,O(nlog2n),2为下标
缺点:不稳定,初始序列有序或基本有序时,时间复杂度降为O(n^2)。

C++:
c++的hash表 hash值计算
C++ hash表
https://blog.csdn.net/u010025211/article/details/46653519/
hash值计算
https://blog.csdn.net/tanggao1314/article/details/51457585

11新特性
https://blog.csdn.net/jiange_zh/article/details/79356417

图形学:
渲染管线
https://blog.csdn.net/nikoong/article/details/79776873

高斯模糊
https://www.zhihu.com/question/54918332/answer/142137732

阴影的做法 除了shadowmap还有啥
shadowmap:
https://blog.csdn.net/xiaoge132/article/details/51458489
https://www.zhihu.com/question/49090321

ssao 环境光遮蔽:
https://blog.csdn.net/zwlstc/article/details/86612359

Shadow Volume 阴影锥
https://zhuanlan.zhihu.com/p/157664336 少有人用
Z-test
https://blog.csdn.net/qq_36761511/article/details/113616867
Z-Write:
https://blog.csdn.net/zjull/article/details/11819923

Unity:
线程 协程关系区别
https://blog.csdn.net/u011484013/article/details/51136780
https://blog.csdn.net/daaikuaichuan/article/details/82951084?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_baidulandingword-2&spm=1001.2101.3001.4242
https://blog.csdn.net/feiBlog/article/details/85397287
https://blog.csdn.net/wsq119/article/details/82154305?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.control&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.control

UGUI适配
https://linxinfa.blog.csdn.net/article/details/113103369
http://blog.sina.com.cn/s/blog_7e247d450102vwqo.html
https://cloud.tencent.com/developer/article/1637553

UGUI图集的作用
https://blog.csdn.net/qq_38721111/article/details/79870373

UGUI遮罩
https://blog.csdn.net/u013015161/article/details/46038989

大场景怎么办?
https://blog.csdn.net/jxw167/article/details/81483685

算法:
upper_bound
https://www.cnblogs.com/bianjunting/p/10581368.html

其他:
在看什么书

答:C++primer(他说都是当工具书的 用到再翻翻)CSAPP

二面
static_cast、dynamic_cast、reinterpret_cast和const_cast之间的区别
https://www.cnblogs.com/sjlove/p/3169646.html

MVC
https://www.zhihu.com/question/20148405/answer/23813147

second

一面,问基础
快速排序的原理
手写快速排序(给了20分钟差点没写完,我写代码还是太慢)
那些排序是稳定的?
https://www.cnblogs.com/codingmylife/archive/2012/10/21/2732980.html
稳定排序:冒泡排序 插入排序 归并排序 基数排序
不稳定排序:选择排序 快速排序 希尔排序 堆排序

有三个属性,N个属性点,现在要实现一个自动均匀随机分配的功能,如何实现?(roll三个随机数,求出他们的和,计算每个数占和的比例,得到三个比例,按这个比例分配。)

c语言的疑难语法
float a=3/2,
float b=(a++)+(++a),问a,b的值
(a=1,int强制类型转换,b=4)

渲染流水线
https://blog.csdn.net/nikoong/article/details/79776873

unity脚本生命周期
https://blog.csdn.net/qq_42351033/article/details/84146234?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.control&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.control

UI渲染顺序
https://www.cnblogs.com/mrmocha/p/8044771.html

如何在UI上显示模型
https://blog.csdn.net/u011611902/article/details/80531941

UI上有粒子效果如何实现(层)
https://blog.csdn.net/HarvestHarvest/article/details/108081392

Canvas重建
https://blog.csdn.net/weixin_34021089/article/details/93543201?ops_request_misc=%25257B%252522request%25255Fid%252522%25253A%252522161329493816780274167399%252522%25252C%252522scm%252522%25253A%25252220140713.130102334.pc%25255Fall.%252522%25257D&request_id=161329493816780274167399&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_v2~rank_v29-5-93543201.pc_search_result_cache&utm_term=UGUI+AutoLayout
https://blog.csdn.net/cyf649669121/article/details/83142903
https://blog.csdn.net/ps_show/article/details/100525280?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_baidulandingword-2&spm=1001.2101.3001.4242

OverDraw //不会
https://blog.csdn.net/candycat1992/article/details/42127811?ops_request_misc=%25257B%252522request%25255Fid%252522%25253A%252522161330967016780261921843%252522%25252C%252522scm%252522%25253A%25252220140713.130102334.pc%25255Fall.%252522%25257D&request_id=161330967016780261921843&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_v2~rank_v29-3-42127811.pc_search_result_cache&utm_term=unity+OverDraw+

图集
https://blog.csdn.net/qq_38721111/article/details/79870373

贴图压缩格式//不会
https://blog.csdn.net/ynnmnm/article/details/44983545?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.control

mipmap //不会
https://blog.csdn.net/qq_36661616/article/details/94341583?ops_request_misc=%25257B%252522request%25255Fid%252522%25253A%252522161329516116780262591640%252522%25252C%252522scm%252522%25253A%25252220140713.130102334.pc%25255Fall.%252522%25257D&request_id=161329516116780262591640&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_v2~rank_v29-4-94341583.pc_search_result_cache&utm_term=unity+mipmap+
https://blog.csdn.net/zengjunjie59/article/details/109485472?utm_medium=distribute.pc_relevant.none-task-blog-OPENSEARCH-3.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-OPENSEARCH-3.control
https://blog.csdn.net/weixin_34302798/article/details/93958589?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_utm_term-2&spm=1001.2101.3001.4242
双线性过滤:https://blog.csdn.net/llsansun/article/details/86648662
双线性插值:https://blog.csdn.net/datase/article/details/80576054?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.control&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.control
LOD:https://blog.csdn.net/llsansun/article/details/99719416

shader 变种//不会
天外有天,这时候我感觉要崩,幸好不问了。。。。

二面,注重能力。
面试官人超好,还介绍自己,自黑,是逆水寒5年架构师。
问项目(我的项目是单人开发的ARPG网游,就是siki那个暗黑战神,做了几个月,应该加了不少分。)(siki牛逼!!!疯狂打call!!!)
如果有许多资源需要重用,怎么办?(对象池,或者引用)
对象池的缓存什么时候清理?(必须有另一个结构管理,否则如果一直没人访问它,就无法清理)
https://blog.csdn.net/LemonXQ/article/details/77148886?ops_request_misc=%25257B%252522request%25255Fid%252522%25253A%252522161331585016780265480629%252522%25252C%252522scm%252522%25253A%25252220140713.130102334.pc%25255Fall.%252522%25257D&request_id=161331585016780265480629&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_v2~rank_v29-11-77148886.pc_search_result_cache&utm_term=unity+%25E5%25AF%25B9%25E8%25B1%25A1%25E6%25B1%25A0

#define是如何实现的
https://blog.csdn.net/biqioso/article/details/80420152?ops_request_misc=%25257B%252522request%25255Fid%252522%25253A%252522161331417416780261957885%252522%25252C%252522scm%252522%25253A%25252220140713.130102334.pc%25255Fall.%252522%25257D&request_id=161331417416780261957885&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_v2~rank_v29-3-80420152.pc_search_result_cache&utm_term=%2523define

空类里面有什么?加个虚函数呢(this指针,虚函数表)
虚函数如何实现的(虚函数表)
有一个类,它有一个私有函数,如何在类外访问它?
(友元函数,或者装饰模式伪造一个给其他访问)

装饰模式强答
1
2
3
4
5
6
class A{
virtual private:funA(){};
}
class B:A{
public:funA(){};
}
这样外边用B代替A的位置,重新实现一遍funA,可以在外部访问一个funA函数,但是A里面的私有还是没变,效果不太好。

lua热更新的原理?(答在IL注入那一套,感觉是为了引出下个问题)
如何在c中实现热更新?用底层的办法( 改!虚!函!数!表!前面几个问题都是为了引出这个吧。。没答出来,后来查的)
对图形学了解多少(学完一本教材,写过一些简单shader)

项目:
管道 消息队列 socket signal 共享内存 mutex.
//socket
1.read服务器socket,获取当前状态,以及ball_vector以及self_vector.
//共享内存+mutex
2.door_keeper创建共享内存。
各个player先确定一个能够看见的常量目标(场地边角,以及门柱),获取一个基准向量,然后根据陀螺仪确定自己指向对方球员的向量方向。
player :在对应的内存中写入自己的位置,以及针对其他球员的方向向量。
3.创建消息队列。

守门员创建内存以及消息队列。

each frame:
写内存,写入自己的位置,以及针对其他球员的方向向量。
wait(wrmutex);
count++;计算有多少完成修改   atomic_t 自旋锁 信号量
signal(wrmutex);
自旋:while(count!=10);
每一个人计算与自己id相同的对方球员位置,并写入。
计算自己和上述球员到球的距离,并写入,如果不正常,65535wait(wrmutexsecond);
countsecond++;
signal(wrmutexsecond);
while(countsecond!=10);
if(正常) 没有被罚下场,或者是倒地。
	计算最佳持球人 考虑朝向以及位置。
	这里加入互斥量mutex,保证发送消息的只有一个人。
	if(最佳)
		给出决策
		给出其他人的移动位置,以及对应的策略,发送send()->queue;
		return;
	else
		while(recv()); 只接受自己的命令
		执行自己命令
		return;
else:
	回场上,或者起身
	return;

linux 管道 https://blog.csdn.net/qq_38410730/article/details/81569852
linux 消息队列 https://www.cnblogs.com/lifan3a/articles/8117559.html
读者-写者 https://blog.csdn.net/fuziwang/article/details/79824996
linux 线程https://blog.csdn.net/a987073381/article/details/52029070
linux 进程IPC https://blog.csdn.net/a987073381/article/details/52006729

https://www.nowcoder.com/questionTerminal/b92d1fcdb1364573b17b1464019e001c?f=discussion

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值