2026年软件工程师面试题集数据结构算法项目经验.docxVIP

  • 2
  • 0
  • 约5.99千字
  • 约 13页
  • 2026-08-04 发布于福建
  • 举报

2026年软件工程师面试题集数据结构算法项目经验.docx

第PAGE页共NUMPAGES页

2026年软件工程师面试题集数据结构算法+项目经验

数据结构与算法(共10题,总分50分)

1.数组与链表(3题,共15分)

1.1(5分):给定一个包含重复元素的数组,请找出并返回数组中最长的不重复子数组的长度。例如,输入`[1,2,3,1,2,3,4]`,输出`4`(对应子数组`[1,2,3,4]`)。

答案与解析:

-方法:使用滑动窗口技术,维护一个哈希集合记录窗口内的元素。

-步骤:

1.初始化双指针`left=0`,`max_len=0`,哈希集合`seen={}`。

2.遍历数组,当`nums[right]`不在`seen`中,则扩展窗口:`seen.add(nums[right])`,`max_len=max(max_len,right-left+1)`。

3.若`nums[right]`已存在,则移动`left`到`seen[nums[right]]+1`,并更新哈希集合。

-时间复杂度:O(n),空间复杂度:O(min(m,n)),其中m为数组长度,n为不重复子数组最大可能长度。

1.2(5分):设计一个数据结构,支持以下操作:

-`add(value)`:添加一个新元素。

-`find(value)`:返回数组中任

文档评论(0)

1亿VIP精品文档

相关文档