- 0
- 0
- 约6.69千字
- 约 21页
- 2026-02-02 发布于福建
- 举报
第PAGE页共NUMPAGES页
2026年程序员技术岗面试题集及解析参考
一、编程语言基础(5题,每题10分)
1.题目:
请解释Java中的`volatile`关键字的作用,并给出一个使用场景的示例代码。
答案:
`volatile`关键字确保变量的可见性和有序性,但不保证原子性。
-可见性:当某个线程修改了`volatile`变量,其他线程能够立即看到这个修改。
-有序性:禁止指令重排序,保证代码执行顺序与书写顺序一致。
示例代码:
java
publicclassVolatileExample{
privatevolatilebooleanrunning=true;
publicvoidstart(){
newThread(()-{
while(running){
//业务逻辑
}
}).start();
}
publicvoidstop(){
running=false;
}
}
解析:
在多线程环境中,`running`变量如果不加`volatile`,其他线程可能无法立即感知其变化,导致死循环。使用`volatile`后,主线程修改`running`时,其他线程会立即读取最新值,从而正确停止循环。
2.题目:
C++中,`std::unique_ptr`与`std::shared_ptr`的区别是什么?在什么场景下使用`std::unique_ptr`更合适?
答案:
-`std::unique_ptr`:独占所有权,只能有一个`unique_ptr`指向对象,自动释放资源。
-`std::shared_ptr`:共享所有权,多个`shared_ptr`指向同一对象,引用计数为0时自动释放。
`std::unique_ptr`更合适的场景:
-对象生命周期与智能指针生命周期一致(如局部变量)。
-避免循环引用问题(不需要额外使用`weak_ptr`)。
示例代码:
cpp
includememory
voiduseUniquePtr(){
std::unique_ptrintptr=std::make_uniqueint(10);
//ptr不能被复制,只能移动
std::unique_ptrintnewPtr=std::move(ptr);
}
解析:
`unique_ptr`适合资源独占场景,如临时对象或单例模式。`shared_ptr`适合需要多个部分共享资源的情况,但需注意循环引用问题(需配合`weak_ptr`)。
二、数据结构与算法(8题,每题10分)
3.题目:
设计一个LRU(LeastRecentlyUsed)缓存,容量为3,输入序列为`[1,2,3,4,1,2,5,1,2,3,4,5]`,请输出缓存命中和未命中的情况。
答案:
LRU缓存逻辑:
-新元素添加时,若缓存已满,删除最久未使用元素。
-如果元素已存在,将其移动到队首。
输出:
-命中:1,2,3,1,2
-未命中:4,5
示例代码(Python):
python
fromcollectionsimportdeque
classLRUCache:
def__init__(self,capacity):
self.cache={}
self.capacity=capacity
self.order=deque()
defget(self,key):
ifkeyinself.cache:
self.order.remove(key)
self.order.append(key)
returnself.cache[key]
return-1
defput(self,key,value):
ifkeyinself.cache:
self.order.remove(key)
eliflen(self.cache)==self.capacity:
oldest=self.order.popleft()
delself.cache[oldest]
self.cache[key]=value
self.order.append(key)
lru=LRUCache(3)
fornumin[1,2,3,4,1,2,5,1,2,3,4,5]:
iflru.get(num)==-1:
print(f未命中:{num})
else:
print(f命中:{num})
解析:
LRU通过双向队列维护访问顺序,哈希表实现O(1)访问。示例中,`4`和`5`未命中,因为缓存已满且不存在。
4.题目:
给定一个数组`[3,
您可能关注的文档
最近下载
- 人教版九年级上册化学1至7单元综合测试卷(含答案).pdf VIP
- 骨科、麻醉科加速康复围手术期患者慢性病管理专家共识(2025年版) .pdf
- 人教版九年级化学上册:一至六单元测试卷.docx VIP
- 安徽省宿州市十三校2026届化学高一第一学期期末教学质量检测试题含解析.doc
- 一年级语文上册识生字测试题.doc VIP
- 输血安全护理ppt完整课件.pptx VIP
- 高一数学培优复数及其运算-讲义(学生版).pdf VIP
- 幼小衔接识字PDF打印版.pdf VIP
- 深度解析(2026)《DLT 5022-2023发电厂土建结构设计规程》.pptx VIP
- 文员招聘考试题及答案.docx VIP
原创力文档

文档评论(0)