2026年技术面试题库与解析.docxVIP

  • 0
  • 0
  • 约7.21千字
  • 约 22页
  • 2026-02-26 发布于福建
  • 举报

第PAGE页共NUMPAGES页

2026年技术面试题库与解析

一、编程基础题(5题,每题10分,共50分)

题目1(10分)

题目:请用Python实现一个函数,该函数接收一个字符串作为参数,返回该字符串中所有唯一字符的列表。例如,输入abaccde,返回[b,d]。

答案:

python

defunique_chars(s):

count={}

forcharins:

count[char]=count.get(char,0)+1

return[charforcharinsifcount[char]==1]

测试

print(unique_chars(abaccde))#输出:[b,d]

解析:

1.使用字典count记录每个字符出现的次数

2.遍历字符串,统计字符频率

3.使用列表推导式筛选出现次数为1的字符

4.时间复杂度O(n),空间复杂度O(1)(假设字符集固定)

题目2(10分)

题目:请解释什么是RESTfulAPI,并说明其四个基本约束条件是什么。

答案:

RESTfulAPI是一种基于HTTP协议的分布式超媒体系统,遵循REST(RepresentationalStateTransfer)架构风格。其四个基本约束条件:

1.无状态(Stateless):每个请求从客户端到服务器必须包含理解请求所需的所有信息,服务器不保存客户端上下文

2.无缓存(Cacheable):客户端可以指定不缓存某个响应,但默认响应都是可缓存的

3.统一接口(UniformInterface):通过固定的操作类型(GET/POST/PUT/DELETE等)和资源标识符实现交互

4.分层系统(LayeredSystem):客户端不能直接访问服务器,系统可以包含中间层如负载均衡器

解析:

1.RESTful强调资源(Resource)的概念,每个资源有唯一URI

2.使用HTTP方法(GET/POST/PUT/DELETE)表示操作类型

3.状态转换通过资源状态变化实现,无需服务器保存会话

4.分层架构允许系统扩展和负载均衡

题目3(10分)

题目:请简述TCP三次握手过程,并说明为什么不能有四次握手。

答案:

TCP三次握手过程:

1.SYN:客户端发送SYN=1的包,请求建立连接,seq=x

2.SYN-ACK:服务器回复SYN=1,ACK=1的包,seq=y,ack=x+1

3.ACK:客户端发送ACK=1的包,ack=y+1,完成连接建立

不能有四次握手的原因:

1.TCP需要确保双方都准备好接收数据

2.三次握手可以避免服务器发送大量空包

3.四次握手会导致不必要的网络流量和延迟

4.TCP连接建立后,双方可以立即开始传输数据

解析:

1.握手过程保证双方都有发送和接收能力

2.SYN报文占用系统资源,三次握手的SYN/ACK/ACK可以最小化资源占用

3.TCP连接是全双工的,一次握手就足以建立双向通信

4.四次握手的额外RTT会降低连接建立效率

题目4(10分)

题目:请用JavaScript实现一个Promise,该Promise在1秒后解析为数字数组[1,2,3,4,5]。

答案:

javascript

functioncreatePromise(){

returnnewPromise((resolve)={

setTimeout(()={

resolve([1,2,3,4,5]);

},1000);

});

}

//使用

createPromise().then(result=console.log(result));//输出:[1,2,3,4,5]

解析:

1.Promise构造函数接收resolve回调

2.使用setTimeout模拟异步操作

3.1秒后调用resolve传递结果数组

4.then方法可以处理Promise解析后的值

题目5(10分)

题目:请解释JavaScript中的事件冒泡机制,并说明如何阻止事件冒泡。

答案:

事件冒泡机制:

1.事件从最内层的元素触发,逐级向上传播到DOM树根节点

2.如果没有阻止,同一事件会在父元素上依次触发

3.浏览器默认支持冒泡,可以用于优化事件处理

阻止事件冒泡:

1.在事件处理函数中调用`event.stopPropagation()`

2.使用`addEventListener`时设置第三参数为false(默认)

3.使用`stopPropagation`比`preventDefault`更精确

解析:

1.冒泡是DOM事件流的第一阶段,用于优化性能

2.通过`event.t

文档评论(0)

1亿VIP精品文档

相关文档