- 0
- 0
- 约8.29千字
- 约 24页
- 2026-02-08 发布于福建
- 举报
第PAGE页共NUMPAGES页
2026年软件工程师面试题库及答案解析
一、编程语言基础(3题,每题10分)
题目1:
请用Java实现一个方法,输入一个整数数组,返回数组中所有奇数元素的和。要求不使用任何外部库。
答案解析:
java
publicstaticintsumOfOdds(int[]arr){
intsum=0;
for(intnum:arr){
if(num%2!=0){
sum+=num;
}
}
returnsum;
}
解析:遍历数组,判断每个元素是否为奇数(`num%2!=0`),若是则累加到`sum`中。时间复杂度O(n),空间复杂度O(1)。
题目2:
用Python编写一个函数,接收一个字符串,返回该字符串中所有连续重复字符的起始和结束索引。例如,输入`abccba`,输出`[(0,1),(2,3),(4,5)]`。
答案解析:
python
deffind_repeats(s):
result=[]
i=0
whileilen(s)-1:
ifs[i]==s[i+1]:
start=i
whileilen(s)-1ands[i]==s[i+1]:
i+=1
end=i
result.append((start,end))
i+=1
returnresult
解析:使用双指针遍历字符串,当发现连续重复字符时,记录起始和结束索引。时间复杂度O(n),空间复杂度O(1)。
题目3:
用C++实现一个函数,将一个字符串中的所有空格替换为`%20`。假设字符串有足够的空间存储结果。
答案解析:
cpp
includestring
usingnamespacestd;
voidreplaceSpaces(strings){
intcount=0;
for(charc:s){
if(c==)count++;
}
intnew_length=s.length()+2count;
s.resize(new_length);
inti=s.length()-1;
for(intj=s.length()-1;j=0;j--){
if(s[j]==){
s[i--]=0;
s[i--]=2;
s[i--]=%;
}else{
s[i--]=s[j];
}
}
}
解析:先统计空格数量,扩展字符串长度,然后从后往前替换空格为`%20`。时间复杂度O(n),空间复杂度O(1)。
二、数据结构与算法(5题,每题10分)
题目4:
用链表实现一个LRU(最近最少使用)缓存,支持`get`和`put`操作。要求`get`操作返回值为缓存中键对应的值,`put`操作将键值对插入缓存中,如果缓存已满则删除最久未使用的元素。
答案解析:
python
classLRUCache:
def__init__(self,capacity:int):
self.capacity=capacity
self.cache={}
self.head=Node(0,0)
self.tail=Node(0,0)
self.head.next=self.tail
self.tail.prev=self.head
classNode:
def__init__(self,key,value):
self.key=key
self.value=value
self.prev=None
self.next=None
defget(self,key:int)-int:
ifkeyinself.cache:
node=self.cache[key]
self._remove(node)
self._add(node)
returnnode.value
return-1
defput(self,key:int,value:int)-None:
ifkeyinself.cache:
self._remove(self.cache[key])
node=Node(key,value)
self.cache[key]=node
self._add(node)
iflen(self.cache)self.capacity:
lru=self.tail.prev
self._remove(lru)
delself.cache[lru.key]
def_remove(self,node):
d
您可能关注的文档
- 2026年融通集团资产运营总监岗位知识考试题集含答案.docx
- 政府公务员招聘考试备考指南与经典题目解析.docx
- 2026年元数据管理面试题及答案详解.docx
- 2026年变频器维修工考试题集.docx
- 2026年医疗健康领域解决方案架构师面试题详解.docx
- 金融行业投资协议管理面试题集.docx
- 2026年电商行业销售精英面试问题及答案.docx
- 教育咨询师岗位面试技巧与答案参考.docx
- 2026年程序员的招聘考试全解秘籍.docx
- 2026年金融风险管理面试题目及解答.docx
- 广西南宁2025-2026秋季期末八年级【语文】试卷(含答案).pdf
- 广西南宁2025-2026秋季期末高一化学试卷(含答案).pdf
- 广西南宁2025-2026秋季期末九年级数学试卷(含答案).pdf
- 广西南宁2025-2026秋季期末高一英语(含答案,无听力音频).pdf
- 广西南宁2025-2026秋季期末高一地理试卷(含答案).pdf
- 内科护理(中职):心包疾病病人的护理PPT教学课件.ppt
- 胆管结石的中医护理方法.ppt
- 内科护理(中职):心肌疾病病人的护理PPT教学课件.ppt
- 内科护理(中职):心律失常病人的护理PPT教学课件.ppt
- 嵌入式系统实践及工程应用—从基础到人工智能:具备AI算力的嵌入式系统开发PPT教学课件.pptx
原创力文档

文档评论(0)