美团(23届春招)前端笔经

3.11 19:00 笔试

平台:赛码网;时间:120min;总分100分

题型:单选20*2分=40分;专项选择10*2分=20分;编程2*20分=40分

一、单选题(计算机基础相关)

1、进程有4页,页面使用顺序1.23,1.2 3 ,12 3 43.2,1,物理块数分为3,OPT算缺页次数?

2、广义表的深度和长度?

3、8个并发进程,4个资源,不会死锁的最少资源

4、目标串T="aaabbbab",模式串P="ab”。采用朴素匹配算法。判断匹配成功需要比较几趟?

5、平衡二叉对中含有54节点,则该树的最大深度为 8

6、存储过程的特点

7、MR模型shuffle阶段的步骤

8、动态规划步骤

9、了防盗链技术,系统管理员采集数据时需要指定http请求报文头的字段是(

10、已知IP划分,判断合法ip

11、Dijkstra算法求解图的最短路径

12、单处理机系统中有99个进程,就绪进程最多最少

13、Mysql中使用视图的限制不包括

14、的真前缀

15、数据库隔离级别

16、视频使用的传输层协议

二、专项选择

跟行测差不多,规律题、数学题……

三、编程题(acm模式)

题1(20分):

题目描述:

小美有一个由数字字符组成的字等串,现在她想对这个字符串进行一些修改。具体地,她可以将这个字符串中任意位置字符修改为任意的数字字符。她想知道,至少进行多少次修改,可以使得修改后的字符串不包含两个连相同的字符?

例如,对于字符串”111222333”。她可以进行3次格故将其变为”121212313”

输入描述:

一行,一个字符串s,s只包含数字字符 (1≤s≤100000)

输出描述:

输出一个非负整数,代表所求的答案。

样例输入:

111222333

样例输出:

3

解题思路:从前往后遍历数组,碰到连续相同的字符就记录连续个数,直到第一个不连续的字符,加上前面的次数f=n/2向下取整(通过55%)

function test(str) {
  let arr = str.split("");
  let len = arr.length;
  let res = 0;

  let temp = arr[0];
  let l1 = 1;
  for (let i = 1; i <= len; i++) {
    if (i < len && arr[i] === temp) {
      l1++;
      continue;
    } else {
      if (l1 > 1) res += Math.floor(l1 / 2);
      temp = arr[i];
      l1 = 1;
    }
  }
  console.log("res:", res);
}
// test('111115222')

题1(20分):

题目描述:

小美是一位天文爱好者,她收集了接下来一段时问中所有会划过她所在的观测地上空的流星信息。n个流星在地所在观测地上空的出现时刻和消失时刻。对于一个流星,若其的出现时刻为s,消失时刻对t,那么小关在时间段[s,t]都能够观测到它。对于一个时刻,观测地上空出现的流星数量越多越好。小关希望能够选择一个最佳的时处进行观测,观测到最多流星,现在小关想知道,在这个最佳时刻,她最多能观测别多少个流星以及一共有多少个最佳时刻可供她选择

输入描述:

第一行是一个正整数n,表示流显的教量

第二行是n个用空格隔开的正整数,第i个数si表示第i个流显的出明时间。

第三行是n个用空格隔开的正整数,第i个数ti表示第i个流早的消失时同

输出描述:

输出一行用空格隔开的两个数x和y,其中x表示能观测到的最多流星数,y表示可供她选择的最佳时刻数量

样例输入:

3

2 1 5

6 3 7

样例输出:

2 4

解题思路:区间两两对比求交集,并将当前交集的整数时间点作为key存入map 值为该时间点出现的数量,当时没写完

function test(n, str1, str2) {
  let arr1 = str1.split("");
  let arr2 = str2.split("");
  let res = new Map();
  for (let i = 0; i < arr1.length; i++) {
	let start1 = arr1[i];
    let end1 = arr2[i];
    for (let j = i + 1; j < arr1.length; j++) {
	  let start2 = arr1[j];
      let end2 = arr2[j];
      if (start2 >= start1 && start2 <= end1) {
        for (let k = start2; k <= end1; k++) {
          if (res.has(k)) {
            res[k] = res[k] + 1;
          } else {
            res.set(k, 2);
          }
        }
      }else if (end2 >= start1 && end2 <= end1) {
        for (let k = start1; k <= end2; k++) {
          if (res.has(k)) {
            res[k] = res[k] + 1;
          } else {
            res.set(k, 2);
          }
        }
      }
    }
  }
  let l1 = Array.from(res.values())
  l1.sort()
  let a = l1[0]
  let count = l1.lastIndexOf(a) + 1
  console.log(a,count )
  console.log("res:", l1);
}
test(3, "215", "637");
胡萝卜和豆角的春招记录 文章被收录于专栏

春招过程中的笔面记录(持续更新,欢迎订阅~ 祝大家早日offer)

全部评论
多少分才能过笔试呀?
点赞 回复 分享
发布于 2023-04-29 12:38 江苏
观星那个 求交集的部分有问题吧
点赞 回复 分享
发布于 2023-03-27 20:15 河北
给了多长时间做题?
点赞 回复 分享
发布于 2023-03-18 20:15 浙江
这题是真的多啊
点赞 回复 分享
发布于 2023-03-18 20:12 甘肃
这单选题也太难了吧,
点赞 回复 分享
发布于 2023-03-17 09:47 河南

相关推荐

owwhy:难,技术栈在嵌入式这块显得非常浅,并且简历有大问题。教育经历浓缩成两行就行了,写什么主修课程,说的不好听这块没人在意,自我评价删了,项目写详细点,最终简历缩成一页。相关技能怎么说呢,有点差了,还写成这么多行
投了多少份简历才上岸
点赞 评论 收藏
分享
头像
03-03 15:53
已编辑
黑龙江大学 Java
在当前开源项目极为丰富的背景下,付费资源并不一定意味着最前沿的技术优势,在具体执行层面展示出自己的独特价值,才是简历上最重要的加分项。1.&nbsp;WebMCP&nbsp;—&nbsp;让网站主动告诉&nbsp;AI&nbsp;该怎么操作AI&nbsp;操作浏览器的方案一直靠&quot;猜&quot;——截图识别、DOM&nbsp;解析,错误率&nbsp;15-30%。WebMCP&nbsp;反过来,让网站自己声明能做什么,AI&nbsp;直接调用结构化接口,准确率接近&nbsp;100%。Chrome&nbsp;Canary&nbsp;已实装。企业内部系统的&nbsp;WebMCP&nbsp;适配目前几乎没人做,是明确的蓝海。推荐理由:简历上写的不是&quot;我会用某个框架&quot;,而是&quot;我在标准刚发布时就做了企业适配&...
书海为家:#人脑vsAI# 尽管深度学习的最初灵感来源于人类的大脑,但二者的运作方式截然不同:深度学习所需要的数据量远比人脑所需要的多得多。可是一旦经过大数据训练,它在相同领域的表现将远远超过人类(尤其是在数字的量化学习,例如挑选某人最可能购买的产品,或从100万张脸中挑选最匹配的一张)——相对来说,人类在同一时间内只能把注意力放在少数几件事情上面,而深度学习算法却可以同时处理海量信息,并且发现在大量数据背后的模糊特征之间的关联,这些模糊特征不仅复杂而且微妙,人类往往无法理解,甚至可能不会注意到。 虽然深度学习拥有人类所缺乏的并行处理海量数据的“绝技”,但不具备人类在面对决策时独一无二的汲取过去的经验、使用抽象概念和常识的能力。 与人类相比,深度学习想要充分发挥作用,离不开海量的相关数据、单一领域的应用场景以及明确的目标函数,这三项缺一不可,如果缺少其中任何一项,深度学习将无用武之地。
AI求职实录
点赞 评论 收藏
分享
评论
13
74
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务