选择
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}
堆排序详解:
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
编译过程:
- 词法分析:将源代码分解成token
- 语法分析:将tokens组织成语法结构(抽象语法树)
- 语义分析:语法抽象树是否符合语义规则
- 中间代码生成:
- 目标代码生成:提高程序提高程序的执行效率,减少资源消耗的执行效率,减少资源消耗
在编译器的目标代码生成阶段,优化旨在改进最终生成的代码,使其在执行时更高效。然而,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博客
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