无八股,主要是聊天
谈谈校园经历
谈谈技术栈
谈谈项目经历
谈谈微服务解决了什么关键问题(一直扯,最后也不告诉我微服务关键是啥)
你的哪个项目最花时间?学城教育
学城教育是你调研需求、写需求文档而来的吗?
minio分块上传怎么做的?
还有哪个项目印象最深? CSAPP
讲讲为什么印象最深? 计算机基础,408集大成者,从数学论证开始的严格计算机底层教学,lab从汇编层面等打开了计算机的大门。
哪个项目测试的最多?测试场景?为什么需要测试?如何测试? nonebot-plugin
手撕:
设计一个贪吃蛇小游戏,从最基础版本开始(20min,实际超时几分钟),任选ide。
python+vscode写的
面试官:由于时间问题写关键代码就行,蛇的长度,移动,吃苹果,死亡。
你喜欢二次元,具体喜欢什么?详细讲讲。
反问:公司业务?岗位职责?行业领域?
具体问题很多,面试官评价整体思路比较清晰(因为我有unity2d小游戏经验)。
# 贪吃蛇类
# 初始长度
# 速度
#
class Node:
x: int
y: int
def __init__(self, x, y):
self.x = x
self.y = y
self.nextNode = None
self.preNode = None
class S:
max_x: int
max_y: int
length: int
head: Node
end: Node
move_x: int
move_y: int
def __init__(
self, init_len: int, init_head: Node, init_end: Node, max_x: int, max_y: int
):
pass
def move(self):
new_head = Node(x=self.head.x, y=self.end.y)
new_head.nextNode = self.head
self.head = new_head
tmp = self.end
self.end = self.end.preNode
del self.end
pass
def crash_self():
# 如果用set、map等哈希判断,就要耦合move和live方法,讲了讲思路就过了
pass
def live(self):
if (
self.head.x < 0
or self.head.x > self.max_x
or self.head.y < 0
or self.head.y > self.max_y
or self.crash_self()
):
return False
def need_generate():
pass
def _generate_apple():
pass
def generate_apple():
if need_generate():
_generate_apple()
pass
def play(s: S):
s.move()
pass
def main():
s = S(3, Node(), Node())
while s.live():
# 每一帧都会运行
play()
generate_apple()
pass
pass
#牛客解忧铺#