2024美团笔试1选择题解析

题目地址icon-default.png?t=N7T8https://www.nowcoder.com/exam/test/80500333/detail?pid=55750581&examPageSource=Company&testCallback=https%3A%2F%2Fwww.nowcoder.com%2Fexam%2Fcompany&testclass=%E8%BD%AF%E4%BB%B6%E5%BC%80%E5%8F%91

选择

4.在计算机网络中,端口号的作用是什么?

区分主机内不同进程

不同网络服务端口:HTTP(80)、HTTPS(443)

5. HTTPS协议通过使用哪些机制来确保通信的安全性()

加密和身份验证

加密:TLS或SSL

身份验证:通过CA证书来验证身份

6.ETag用于标识资源的唯一标识符,它可以用于()

验证资源是否发生变化

ETag是web缓存验证机制,表示资源的状态或唯一性。

由服务器生成,在客户端首次发送资源请求时返回,客户端保存ETag

当客户端再次请求资源,会在请求中包含ETag;服务器会比对ETag的值,如果匹配,则说明无变化

7.在一个单道系统中,有4个作业P、Q、R和S,执行时间分别为2小时、4小时、6小时和8小时,P和Q同时在0时到达,R和S在2小时到达,采用短作业优先算法时,平均周转时间为()。

9h

周转时间 = 完成时间-到达时间

8.系统中现有一个任务进程在11:30到达系统,如果在14:30开始运行这个任务进程,其运行时间为3小时,现求这个任务进程的响应比为()

2

响应比 = (执行时间+等待时间)/ 执行时间

9.在一个物流管理系统中,需要一个功能来处理不同类型的货物运输请求,如陆运、空运或海运。该系统应能够根据运输类型的不同选择不同的处理策略。哪种设计模式最合适()

策略模式

工厂模式:提供了一个接口(抽象工厂)来创建一系列对象,并且隐藏了对象实现的具体细节

(下图中shape-抽象产品 circle-具体产品

shapeFactory-抽象工厂 circleFactory-具体工厂 )

e.g.手机是一个抽象产品,小米手机、华为手机、苹果手机是具体的产品实现,而不同品牌的手机在各自的生产厂家(具体工厂)生产。

桥接模式:通过组合建立起抽象部分和实现部分的联系,而不是用继承的方式

e.g.图形编辑器中,每一种图形都需要蓝色、红色、黄色不同的颜色,如果不使用桥接模式,可能需要为每一种图形类型和每一种颜色都创建一个具体的子类,而使用桥接模式可以将图形和颜色两个维度分离,两个维度都可以独立进行变化和扩展

策略模式:定义了一系列作用相同,但是实现不同的算法,并把算法实现都封装起来,使它们之间可以互换

适配器模式:起转接的作用,把一个类的接口转化成用户需要的另一个接口,作用类似拓展坞

参考:kama-DesignPattern/DesignPattern at main · youngyangyang04/kama-DesignPattern · GitHub

10.对关键码序列{9, 27, 18, 36, 45, 54, 63}进行堆排序,输出2个最大关键码后的剩余堆是()

{45, 36, 18, 9, 27}

堆排序详解:

堆排序详细图解(通俗易懂)-CSDN博客

11.以下哪个设计模式主要用于在不改变原始类的情况下扩展其功能()

装饰器模式

装饰器模式:可以在不定义类的情况下给对象增加新的功能

建造者模式:将对象的构建过程分为多个步骤,并为每个步骤定义一个抽象的接口。具体的构建过程由实现了这些接口的具体建造者类来完成

12.设哈希表长m=10,有一堆数据元素,关键字分别{14, 25, 36, 47, 58, 69, 80},按照哈希函数为H(key)=key%10,如用线性探测法处理冲突,求关键字90填装的哈希表位置的序号是()。

1

13.在一颗深度为8的完全二叉树中,最少可以有多少个结点,最多可以有多少个结点?

128(2^7)、255(2^8 - 1)

深度为n的满二叉树节点数:2^n - 1

14.在编译器的目标代码生成阶段,以下哪个不是优化的主要目标是()

A 降低程序的功耗 B 减小目标代码的体积 C 提高目标代码的执行效率 D 减少程序的编译时间

D

编译过程:

  1. 词法分析:将源代码分解成token
  2. 语法分析:将tokens组织成语法结构(抽象语法树)
  3. 语义分析:语法抽象树是否符合语义规则
  4. 中间代码生成:
  5. 目标代码生成:提高程序提高程序的执行效率,减少资源消耗的执行效率,减少资源消耗

在编译器的目标代码生成阶段,优化旨在改进最终生成的代码,使其在执行时更高效。然而,D. 减少程序的编译时间不是目标代码生成阶段优化的主要目标。编译时间的优化关注的是编译器的性能,而不是生成的目标代码的性能。编译时间优化旨在改进编译过程本身,使编译器能够更快地完成工作,但这通常是编译器设计者需要考虑的问题,而不是目标代码优化的直接目标。

15.若入栈序列为1, 3, 5, 2, 4, 6,且进栈和出栈可以穿插进行,则不可能的输出序列为()。

A 1, 3, 5, 2, 4, 6 B 1, 3, 6, 2, 5, 4 C 1, 3, 5, 4, 2, 6 D 1, 3, 5, 4, 6, 2

B

A: 每个数进栈后立马弹出

C:1、3、5进栈后立马弹出 - 2、4进后弹出 - 6进后弹出

D:1、3、5进栈后立马弹出 - 2、4进 - 4弹出(栈中剩2)- 6进 - 6、2弹出

16.在用KMP算法进行模式匹配时,若是指向模式串"mnopmn"的指针在指到第5个字符"m"时发生失配,则指针回溯的位置为()。注:字符串中字符从字符数据1号位开始存储,也即从1开始编号。

1

【数据结构】串模式匹配及KMP算法详解——看不懂来砍我_若n为目标串长,m为模式串长则串的bf匹配算法和kmp匹配算法最坏的情况下的时间复杂-CSDN博客

【搬运】油管阿三哥讲KMP查找算法,中英文字幕,人工翻译,简单易懂_哔哩哔哩_bilibili

17.代码需要经过一系列步骤编译成机器指令,根据完成任务不同,可以将编译器的组成部分划分为前端与后端。下列选项是编译器前端在编译源程序时编译的顺序,正确的是()

词法→语法→中间代码分析器

18.不同的数据存放区存放的数据和对应的管理方法是不同的。对于某些数据,如果在编译期间就可以确定数据对象的大小和数据对象的数目,在编译期间为数据对象分配存储空间,这些数据对应的存储分配策略是()

A 栈式存储分配 B 堆式存储分配 C 动态存储分配 D 静态存储分配

D

19.下图属于哪种设计模式?

模板方法模式

模板方法:分为模板类和具体类,在模板类中定义好一个算法的骨架(大致流程),然后在具体类中完善具体操作

20.某硬盘有240个磁道(最外侧磁道号为0),磁道访问请求序列为30, 60, 90, 120, 190, 150, 220,当前磁头位于第180号磁道并从外侧向内侧移动。按照SCAN调度(电梯调度)方法处理完上述请求后,磁头移过的磁道数是()。

230

21.下列选项中只要其中一个表中存在匹配,则返回行的SQL JOIN的类型是()。

A INNER JOIN B LEFT JOIN C RIGHT JOIN D FULL JOIN

D

解释

  • INNER JOIN:如果表中有至少一个匹配,则返回行
  • LEFT JOIN:即使右表中没有匹配,也从左表返回所有的行
  • RIGHT JOIN:即使左表中没有匹配,也从右表返回所有的行
  • FULL JOIN:只要其中一个表中存在匹配,则返回行

(存疑)22.已知某个Mysql数据库里面有一个帖子表,这个表会存储帖子的各种信息,请问以下哪种情况对应的列不适合建索引

23.下列哪些运算不会排序()

A GROUP BY子句 B ORDER BY子句 C 聚合函数(SUM、COUNT、AVG、MAX、MIN) D BETWEEN

D

  • 19
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

m0_62364940

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值