网易雷火游戏服务端1.2面面经
本来不想写的,因为应该是挂
但今天来消息竟然过了~ 难道是有道三面的影响?
一面 45min
给了七个题, 我应该结果只有编程题跟那个多选题做对了。。。
可惜的是倒数两个思维题我都会做,而且也很简单,思路都对,但是答案都给错了
某数据库表 CREATE TABLE `tbl_char` ( `ch_uid` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '角色id', `ch_sname` varchar(32) NOT NULL DEFAULT '' COMMENT '角色名', PRIMARY KEY (`ch_uid`) ); 角色id不会重复,但是角色名可能重复 写出求tbl_char 中的所有不同的 ch_sname及其出现次数的sql语句 关于进程间通讯的锁的说法,下列正确的是: A、自旋锁通过休眠使进程阻塞,并一直处于循环检测持锁者是否已经释放。 B、只要正确加锁,每次可以有多个进程进入临界区。 C、信号量是一个计数器,可以用来控制多个进程对共享资源的访问。 D、递归锁允许同一个线程在未释放其拥有的锁时反复对该锁进行加锁操作。 下面是带长度的字符串拷贝函数,最多拷贝 siz-1 个字节,目标字符串以'\0'结尾,返回值为 strlen(src)。找出代码中的逻辑错误,并修正。 size_t strlcpy(char *dst, const char *src, size_t siz) { register char *d = dst; register const char *s = src; register size_t n = siz; if (n != 0 && --n != 0) { do { if ((*++d = *++s) == 0) break; } while (--n != 0); } if (n == 0) { if (siz == 0) *d = '\0'; while (*s++) ; } return (s - src); } int arr[6] = {1, 2, 3, 4, 5, 6}; int* ptr = (int*)(&arr + 1); printf(“%d“, *(ptr - 1)); 一张非连通图有2020条边,那么这张图至少有 ( )个点 小明和小刘交朋友约会,约定在周六晚上19:30至20:30在公园见面。 小明的等待容忍时间是40分钟,小刘则没这么耐心,等待容忍时间是20分钟,请问他们有缘见面的概率是多少? 等待容忍时间是指,超过这个时间,就不等了 有一个长度为n的数组,每个元素的初始值都为0. 现在进行m次操作,每次操作对[a,b]区间的每个元素都执行相同的加k操作(k为整数) 接下来进行q次查询操作,每次查询一个位置p上的值。
还问了一些软实力相关,为什么选择网易游戏服务端
你觉得自己的优缺点。 聊了一下你玩的游戏
反问: 面试官请问可以告知一下我前面答错的一个地方吗,然后面试官说 那个连通图你的思路是对的,但很可惜你数算错了,我一看***了 跟下2020算成201了哈哈哈
然后就收场了。
二面 25min
问的偏八股,而且有一点点细节。
说一下vector跟list的区别, 遍历同长度的数组跟链表 那个更快,为什么
你刚才提到寄存器,数组遍历不也是有指针操作吗,能从操作系统角度说一下吗 然后我就不会了
讲一下C++的多态,多继承多态类的内部会有什么变化吗, 这个不会 ,我说我猜测 应该会复制继承体系内所有基类的虚函数表
说一下malloc跟new的区别
说一些malloc的底层实现,free的底层实现了解吗,为什么malloc需要得到内存的大小,free的时候只需要传一个头指针呢 俺不会
说一下你了解数据库的哪些索引,一般用于什么情况下
为什么局促索引要用b+数,用红黑树可以吗
有20w数据,有一个数字重复,数据大小在20w左右,找到他
我答得是遍历一遍求的最小值,然后按最小值偏移量作为下标交换原数组跟对应下标的数,如果相等则找到了
然后又问了一下为什么想投游戏开发,有没有游戏开发相关经验
反问: 技术栈是啥子
#网易雷火##春招##面经#