2026年IT行业软件工程师面试题及参考答案.docxVIP

  • 0
  • 0
  • 约8.65千字
  • 约 24页
  • 2026-01-14 发布于福建
  • 举报

2026年IT行业软件工程师面试题及参考答案.docx

第PAGE页共NUMPAGES页

2026年IT行业软件工程师面试题及参考答案

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

1.题目(10分):

请用Python实现一个函数,输入一个正整数n,返回其所有质因子的列表。例如,输入`28`,输出`[2,2,7]`。要求不使用第三方库,代码需考虑效率。

参考答案:

python

defprime_factors(n):

factors=[]

divisor=2

whiledivisordivisor=n:

whilen%divisor==0:

factors.append(divisor)

n//=divisor

divisor+=1

ifn1:

factors.append(n)

returnfactors

解析:

-从最小的质数2开始,逐步除以n,若能整除则记录该因子并除以该因子,继续循环;若不能整除则增加除数。

-时间复杂度约为O(√n),适用于常规面试场景。

-优化点:可提前终止循环当除数平方大于n。

2.题目(10分):

请用Java实现一个方法,输入一个字符串,返回该字符串中唯一出现一次的字符。若多个字符唯一出现,返回第一个。例如,输入`abaccdeff`,输出`b`。

参考答案:

java

publicstaticcharfirstUniqChar(Strings){

int[]counts=newint[26];

for(charc:s.toCharArray()){

counts[c-a]++;

}

for(charc:s.toCharArray()){

if(counts[c-a]==1){

returnc;

}

}

return_;//无唯一字符时返回特殊值

}

解析:

-使用数组统计每个字母出现次数,时间复杂度O(n),空间复杂度O(1)。

-先统计所有字符频次,再遍历字符串返回第一个唯一字符。

-优化点:可合并遍历,但代码可读性优先。

3.题目(10分):

请用C++实现一个模板函数,输入一个vector,返回其中最大的元素及其索引。例如,输入`{3,1,4,1,5}`,输出`(5,4)`。

参考答案:

cpp

includevector

includeutility

std::pairT,intfindMaxWithIndex(conststd::vectorTvec){

if(vec.empty())returnstd::make_pair(T(),-1);

Tmax_val=vec[0];

intmax_idx=0;

for(inti=1;ivec.size();++i){

if(vec[i]max_val){

max_val=vec[i];

max_idx=i;

}

}

returnstd::make_pair(max_val,max_idx);

}

解析:

-使用模板支持任意数据类型。

-初始化最大值和索引,遍历vector更新结果。

-时间复杂度O(n),空间复杂度O(1)。

4.题目(10分):

请用JavaScript实现一个函数,输入一个对象,返回一个新对象,其中键值对顺序与原对象一致。例如,输入`{b:2,a:1}`,输出`{b:2,a:1}`。

参考答案:

javascript

functionshallowCopy(obj){

if(obj===null||typeofobj!==object)returnobj;

constcopy=Array.isArray(obj)?[]:{};

for(constkeyinobj){

if(obj.hasOwnProperty(key)){

copy[key]=obj[key];

}

}

returncopy;

}

解析:

-区分数组和普通对象,避免原型链污染。

-使用`hasOwnProperty`确保键的原创性。

-时间复杂度O(n),适用于面试常规场景。

5.题目(10分):

请用Go实现一个函数,输入一个字符串,返回该字符串的所有子串。例如,输入`abc`,输出`[,a,ab,abc,b,bc,c]`。

参考答案:

go

funcsubstrings(sstring)[]string{

n:=len(s)

varres[]string

fori:=0;i(1n);i++{

varsbstrings.Builder

f

文档评论(0)

1亿VIP精品文档

相关文档