2025春季美团笔试

30道选择题+2道编程题

30道选择题:

操作系统页号块号,逻辑物理地址转换,磁盘读取算法;

计算机网络广播地址,ARP,SMTP协议;

设计模式单例模式,建造者模式;

高中线性规划题,鸡兔同笼题;

数据库mysql触发器,数据库命令,删除表数据;

离散数学集合求只喜欢一种运动的人

四元式序列(这是什么东西??)

2道编程题

1.输入数组长度,然后输入一个数组。把f(i)定义为数组元素a[i]翻倍后数组的最大值,请输出f(i)数组。

解:这个很简单,就是对数组逐位遍历,求它的翻倍值,然后再对整个数组进行冒泡里面的沉底操作,找到最大值,这样做的时间复杂度是O(n^2),哎呀这个方法还可以优化,唉,可以把数组元素的最大值先存到max变量,然后每次对元素翻倍后马上先跟这个max作比较,这样一些元素就可以不用沉底了唉。。但是感觉还是有更好的方法。

2.给两个等长的字符串s和t,每一次可以选一个字符串,使它的任意一个前缀全部变为某字母c,问至少需要变化几次才能使两个字符串相等,并输出所做的操作。

例如:s为aabc,t为abcc,则输出

2 //表示至少变两次

2 3 b //表示第一次变的是第二个字符串t 变前3位前缀 变成b

2 2 a //表示第二次变的是第二个字符串t 变前2位前缀 变成a

这道题楼主没做完,唉,大概剩半个小时做这道题。思路是,字符串是从后往前变的,要使变化的次数最少,必须向着字母块少的字符串变。字母块少指的是:比如aabc,前缀只有2个不同的块,但是abcc前缀有3个不同的块,所以要向着aabc变。所以应该是先对每个字符串都遍历一遍,数他的前缀一共有几个块,确定变化的目标为块数较少的块,然后再对这个目标字符串从后往前遍历,输出怎么变。应该是这样。(感觉这题还是不难的,楼主真心碎)

总结:前面选择题就还好,主要是不会的就一点都不会,会的题目算得有点久,而且略显纠结,不熟就是这样的了,集合那一题真是算来算去好绝望,有5分钟吧,,,总之一个小时做完速度应该还算正常的,,吧,可以针对性地加强一些408的熟悉度,以及适当地了解一些数据库操作,为什么我们专业不必修数据库,学生出去怎么抬得起头做人

大题的话,一定要厘清状态,明确状态再写代码。本来方向写对了又给全删掉改成了另一个思路,还想着说可以这个变化的字符串可以转变,一会儿变s,一会儿变t,,不是的,但凡捋一下状态都不至于醉得这么厉害,,,一个字符串前缀全变了还能找回原来的样子吗,我真服了,就是因为不明确状态,模模糊糊上手写,写的东西也是依托。。。

最后,祝看帖子的uu们找工作顺利~

#美团##2025暑期实习##美团笔试##凉凉#
全部评论

相关推荐

2 1 评论
分享
牛客网
牛客企业服务