2026年软件工程师面试编程能力测试题库.docxVIP

  • 1
  • 0
  • 约7.86千字
  • 约 22页
  • 2026-07-16 发布于福建
  • 举报

2026年软件工程师面试编程能力测试题库.docx

第PAGE页共NUMPAGES页

2026年软件工程师面试编程能力测试题库

1.数据结构与算法(共5题,每题15分,总分75分)

题目1(15分):

题目描述:

给定一个包含重复元素的整数数组`nums`,请找出数组中不重复的所有子数组,并返回其长度之和。子数组是指数组中连续的元素序列。例如,`nums=[1,2,1]`,不重复的子数组包括`[1]`,`[2]`,`[1]`,`[1,2]`,`[2,1]`,`[1,2,1]`,但`[1,2,1]`重复,应排除。最终返回不重复子数组的长度之和(本例为6)。

要求:

-时间复杂度不超过O(n2)。

-请用Python或Java实现。

答案与解析:

python

defsum_unique_subarrays(nums):

total=0

n=len(nums)

foriinrange(n):

count=1

forjinrange(i+1,n):

ifnums[j]!=nums[j-1]:

count+=1

else:

break

total+=count

returntotal

解析:

外层循环遍历每个起始点,内层循环统计以该起始点开头的连续重复子数组长度。每次遇到重复元素时终止统计,确保子数组不包含重复元素。最终将所有不重复

文档评论(0)

1亿VIP精品文档

相关文档