西山居【SEED训练营】笔试
选择(不定项):
拥塞控制用于接收,流量控制用于网络。(完全不会)
不定项的选择难度太高了,很多时候我只能选一项来个保底分
填空:
struct T{ int n; char* pc; float f; union{ double d; unsigned int w; } } struct T{ int n; float f; char* pc; union{ double d; unsigned int w; } }
C++内存向8字节对齐,那么以上两种结构体的占内存大小为多少?(我两个都写48,内存对齐部分也完全不会啊)
编程:
第一题:93.33
题意:给出一个数组,保证里面数组两两不同,问你这是不是某个二叉线索树的后序遍历,返回true或false
我的思路是首先序列最后一个肯定是二叉树的根结点,然后找到第一个比根大的数,那么以此划分的两个区间一个是左子树一个是右子树,暴力判断里面数是不是符合右子树全是大于根的,然后递归下去。
但是不知道为什么93.33,后面感觉是题目有问题
比如[3,4,7,6,5]这个序列按后序遍历造可以一下的一种,但是一个符合一个不符合。
第二题:100(就是模拟,比较简单)
应用题:
这个更是重量级,根本不会写,20分白送了,感觉肯定进不了面试了,白花时间写了
题目:3.玩家在已耕地后的地块上种植作
物,在不考虑施肥和浇水的情况下,作
物会在固定生长时间后结果。
4.玩家需要每24小时给作物所在地
块浇一次水,否则作物会暂停生长。24
小时内重复浇水,以最新的一次为准。
5.作物结果后,玩家使用镰刀收获
果实。收获操作后,玩家获得果实(直
接进入背包),作物立即消失,该地块
可重新种植,保持其耕地状态,同时清
空其施肥和浇水状态(如果存在)。注
意,果实即使长时间不收获也不会消
失,作物结果后将一直保持该状态。
根据上述需求,请回答以下问题:
1.该需求可能涉及到哪些功能系统
程序系统?
2.以种田相关的核心系统为例,尽
可能列出其中关键的类,函数,以及数
据结构,并作简要说明。
3.从程序开发的角度,描述一下上
述种田玩法流程的代码逻辑,重点描述
几个关键点(你认为的)的实现
4.如果这个游戏中的农田足够大
你会做出哪些调整以优化游戏性能?
题目只截图出来部分,反正我不会做