红棉小冰校招一二三面已签

投的是开发岗

一面
问了一下我的项目经历,发现没什么好讲的,就直接让我做题了,做的也都是一些基础题:
1. 给一个树的root,找最后一层的最左边的节点;
2. LRU(设计)

二面
语言基础:因为我会java和Python,就问了两种语言的异同。

提到变量类型的时候,他问了java和Python动/静态类型的原理,我说不会,他就让我猜。假设现在你来设计Python,怎么处理类中动态添加的成员变量。(dict,存在别处)还有java为什么是静态类型的语言,java如何确定变量类型,java只在编译时检查对象类型吗?

还让我用最精简的方式写字符串列表排序(字符序,除了`x<a`)。一开始写了个compare方法传给sort函数的key,后来在面试官的提示下,一行代码就搞定了,key=lambda ele: str.replace(ele, "x", "0")

还有设计一个API,处理超级大的json格式内容(无法一次性加载到内存)。面试官提示可以用状态机完成大json的解析。

1. 需要几个类:经提示后是2个,一个对应原来的json,负责一些load,dump操作,另一个对应返回的数据类型(如dict,list等)。

2. 输入类型:一开始我传入的是文件路径字符串,后来面试官问要输入不是文件呢,你应该用stream,stream会提供一些读取方法

这题我真的不会😂

这个面试就偏设计

三面
面试官没让我做题,
1. 挑一个经历将最有挑战的点,做的东西都太简单了,所以对自己的要求是讲清楚了就好。
2. 问如何检查小冰生成的字符串中是否有出现大量重复的内容,比如前300个字是有意义的,后面就全是“今天天气好晴朗好晴朗...好晴朗”,后来给了提示和限制:重复内容长度为2-30个字符+最长公共子序列;(我的答案是先按语义将字符串划分成至少2个词的子串,然后通过最长公共子序列来计算相似度,把相似度高的词聚在一起成簇;计算每个簇间的相似度,然后合并簇,直到簇间相似度合降低到一个threshold)
3. 根据微信PC端的登录流程设计系统。我瞎讲了一下,然后他问PC、手机、服务器谁和谁通信(PC在内网,手机和服务器没法主动联系它,我想不出,面试官提示了轮询),需要传递什么信息,一个人扫两个码和两个人扫同一个码怎么处理,手机扫了二维码后为什么要二次确认,能想出其它极端情况来实现测试覆盖吗?
#面经##校招##北京红棉小冰科技有限公司#
全部评论
补一下后续:入职不到四个月,因公司架构变化被裁了,赔了0.5月工资
1 回复 分享
发布于 2022-11-23 21:15 北京
大家不用私信问我工作体验,我还没毕业,未入职呢
点赞 回复 分享
发布于 2022-05-31 08:36
我傻了,这问的都是啥
点赞 回复 分享
发布于 2021-11-24 09:30
“x < a 其它按字母序”不知道为什么现实不出来,答案是 sorted(arr, key=lambda element : str.replace(element, 'x&(3980)#39;, '0'))
点赞 回复 分享
发布于 2021-11-23 10:01
他们的开发语言是Python和cpp,也会有一点c#
点赞 回复 分享
发布于 2021-11-22 15:38

相关推荐

评论
4
8
分享

创作者周榜

更多
牛客网
牛客企业服务