2026年软件工程师面试宝典技术难题及答案.docxVIP

  • 2
  • 0
  • 约6.08千字
  • 约 18页
  • 2026-03-17 发布于福建
  • 举报

2026年软件工程师面试宝典技术难题及答案.docx

第PAGE页共NUMPAGES页

2026年软件工程师面试宝典:技术难题及答案

一、算法与数据结构(共5题,每题10分)

1.题目:

给定一个包含重复数字的数组,请找出所有不重复的三元组,使得三元组中的三个数之和等于目标值。要求时间复杂度不超过O(n2)。

2.题目:

设计一个LRU(最近最少使用)缓存,支持get和put操作。get操作返回键对应的值,如果键不存在返回-1;put操作将键值对插入缓存,如果缓存已满,则删除最久未使用的元素。要求空间复杂度O(n)。

3.题目:

给定一个二叉树,请判断它是否是平衡二叉树。平衡二叉树指的是对于任意节点,其左右子树的高度差不超过1。

4.题目:

实现一个函数,将一个字符串中的所有单词逆序,但单词内部的字母顺序不变。例如,输入theskyisblue,输出blueisskythe。

5.题目:

给定一个无序数组,请找到数组中的中位数。要求时间复杂度O(n)。

答案与解析

1.答案:

python

defthree_sum(nums,target):

nums.sort()

n=len(nums)

result=[]

foriinrange(n):

ifi0andnums[i]==nums[i-1]:

continue

left,right=i+1,n-

文档评论(0)

1亿VIP精品文档

相关文档