- 0
- 0
- 约6.63千字
- 约 20页
- 2026-01-27 发布于福建
- 举报
第PAGE页共NUMPAGES页
2026年互联网公司技术总监面试题及答案解析
一、编程与算法题(共5题,每题20分,总分100分)
1.题目:
实现一个LRU(LeastRecentlyUsed)缓存机制,支持get和put操作。缓存容量为固定值,当缓存满时,需要淘汰最久未使用的元素。请用Java或Python实现,并说明时间复杂度和空间复杂度。
答案:
java
importjava.util.HashMap;
importjava.util.Map;
classLRUCacheK,V{
privatefinalintcapacity;
privatefinalMapK,Nodemap;
privatefinalNodehead,tail;
staticclassNodeK,V{
Kkey;
Vvalue;
NodeK,Vprev;
NodeK,Vnext;
Node(Kkey,Vvalue){
this.key=key;
this.value=value;
}
}
publicLRUCache(intcapacity){
this.capacity=capacity;
map=newHashMap();
head=newNode(null,null);
tail=newNode(null,null);
head.next=tail;
tail.prev=head;
}
publicVget(Kkey){
NodeK,Vnode=map.get(key);
if(node==null)returnnull;
moveToHead(node);
returnnode.value;
}
publicvoidput(Kkey,Vvalue){
NodeK,Vnode=map.get(key);
if(node!=null){
node.value=value;
moveToHead(node);
}else{
NodeK,VnewNode=newNode(key,value);
map.put(key,newNode);
addToHead(newNode);
if(map.size()capacity){
NodeK,VtoRemove=removeTail();
map.remove(toRemove.key);
}
}
}
privatevoidmoveToHead(NodeK,Vnode){
removeNode(node);
addToHead(node);
}
privatevoidaddToHead(NodeK,Vnode){
node.prev=head;
node.next=head.next;
head.next.prev=node;
head.next=node;
}
privatevoidremoveNode(NodeK,Vnode){
node.prev.next=node.next;
node.next.prev=node.prev;
}
privateNodeK,VremoveTail(){
NodeK,Vres=tail.prev;
removeNode(res);
returnres;
}
}
//时间复杂度:get和put均为O(1),空间复杂度:O(capacity)
解析:
LRU缓存的核心是双向链表+哈希表。哈希表用于O(1)时间查找到节点,双向链表用于记录访问顺序,头节点表示最近访问,尾节点表示最久未访问。当缓存满时,移除尾节点。
2.题目:
给定一个整数数组,请找出其中不重复的数字,并返回它们的和。例如:输入[1,2,3,2,4,3],输出7(1+4)。
答案:
python
defsum_unique(nums):
seen=set()
unique_sum=0
fornuminnums:
ifnumnotinseen:
unique_sum+=num
seen.add(num)
returnunique_sum
示例
print(sum_unique([1,2,3,2,4,3]))#输出7
解析:
使用集合记录已见数字,遍历数组时,仅对未见的数字累加。时间复杂度O(n),空间复杂度O(n)。
3.题目:
实现一个函数,判断一个字符串是否是有效的括号组合。例如:输入()[]{},输出True;输入(],输出False。
答案:
您可能关注的文档
- 人力资源经理招聘面试题库大全含答案.docx
- 2026年跨境电商运营经理面试全解析及参考答案.docx
- 网络安全工程师招录考试题目参考集.docx
- 2026年工程管理专业人员的招聘面试题.docx
- 2026年金融界项目经理面试全攻略及答案.docx
- 销售顾问面试题及答案.docx
- 2026年制造业生产经理面试题库及答案解析.docx
- 打造卓越领导力班级团队教练的面试问题与答案.docx
- 2026年网络安全顾问笔试题库含答案.docx
- 联通税务专家面试题集.docx
- 2025至2030酒店产业政府现状供需分析及市场深度研究发展前景及规划可行性分析报告.docx
- 2025-2030中国笔记本电脑和平板电脑行业市场现状供需分析及投资评估规划分析研究报告.docx
- 2025-2030中国安乃近行业运行形势及竞争策略分析研究报告.docx
- 2025至2030中国医用显示器行业细分市场及应用领域与趋势展望研究报告.docx
- 2025至2030中国飞机加油行业细分市场及应用领域与趋势展望研究报告.docx
- 2025至2030中国电机启动器行业细分市场及应用领域与趋势展望研究报告.docx
- 2025至2030中国帮助创作工具(HAT)软件行业深度研究及发展前景投资评估分析.docx
- 2025至2030增益均衡器行业市场占有率及投资前景评估规划报告.docx
- 2025至2030红茶行业市场风险投资及运作模式与投融资报告.docx
- 2025至2030中国变频功率计行业调研及市场前景预测评估报告.docx
原创力文档

文档评论(0)