2026年计算机软件工程师面试题目及答案详解.docxVIP

  • 0
  • 0
  • 约6.78千字
  • 约 21页
  • 2026-03-24 发布于福建
  • 举报

2026年计算机软件工程师面试题目及答案详解.docx

第PAGE页共NUMPAGES页

2026年计算机软件工程师面试题目及答案详解

一、编程题(共5题,每题20分,总分100分)

这类题目主要考察候选人的编程基础、逻辑思维和代码实现能力。题目涵盖算法、数据结构及实际应用场景。

题目1(20分):

问题描述:

给定一个包含重复元素的整数数组`nums`,请返回其中不重复的元素个数。假设数组长度不超过1000,所有元素范围在-1000到1000之间。

示例:

输入:`nums=[1,2,2,3,4,4,5]`

输出:`5`(不重复元素为1,2,3,4,5)

要求:

1.不能使用额外的数据结构(如哈希表)。

2.时间复杂度尽可能低。

参考代码(Python):

python

defcount_unique(nums):

nums.sort()#先排序

count=1#至少有一个不重复元素

foriinrange(1,len(nums)):

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

count+=1

returncount

答案解析:

1.排序法:通过排序将重复元素相邻,然后遍历统计连续不同的元素。

-时间复杂度:O(nlogn)(排序占主导),空间复杂度:O(1)(排序可原地完成)。

2.额外数据结构法:使用哈希集合统计不重复元素,但题目限制不能使

文档评论(0)

1亿VIP精品文档

相关文档