- 0
- 0
- 约6.89千字
- 约 19页
- 2026-03-03 发布于福建
- 举报
第PAGE页共NUMPAGES页
2026年软件开发工程师笔试编程题及算法详解
一、编程实现题(共3题,每题15分,共45分)
题目1(15分):实现一个简单的LRU(LeastRecentlyUsed)缓存机制
背景说明:
LRU缓存是一种常用的内存管理算法,通过记录最近最少使用的元素,当缓存容量满时,优先淘汰最久未使用的元素。请实现一个LRU缓存类,支持以下操作:
1.`LRU(intcapacity)`:初始化缓存容量。
2.`get(intkey)`:获取键`key`对应的值,若存在则返回值并更新最近使用时间,若不存在返回-1。
3.`put(intkey,intvalue)`:插入或更新键值对,若容量已满则淘汰最久未使用的元素。
要求:
-使用哈希表和双向链表实现,时间复杂度为`O(1)`。
-请提供完整代码实现及核心逻辑说明。
示例输入:
plaintext
LRU(2)//初始化容量为2
put(1,1)//缓存是{1=1}
put(2,2)//缓存是{1=1,2=2}
get(1)//返回1
put(3,3)//去除键2,缓存是{1=1,3=3}
get(2)//返回-1(未找到)
题目2(15分):实现一个字符串转换器,支持大小写翻转和字符替换
背景说明:
给定一个字符串`s`和一个转换规则`rules`,其中`rules`是一个列表,每个元素为`(from_char,to_char)`表示将`from_char`替换为`to_char`。此外,要求在替换过程中,所有大写字母转换为小写,所有小写字母转换为大写(即大小写翻转)。
要求:
-请实现一个函数`convertString(s,rules)`,返回转换后的字符串。
-请注意替换顺序,先进行字符替换,再统一大小写翻转。
示例输入:
plaintext
s=HelloWorld
rules=[(H,h),(o,O),(d,D)]
convertString(s,rules)//输出hELLOwORLD
解析:
1.先替换字符:`HelloWorld`→`hELLOWorld`(`H`→`h`,`o`→`O`,`d`→`D`)。
2.统一大写转小写、小写转大写:`hELLOWorld`→`hELLOwORLD`。
题目3(15分):实现一个文件压缩算法,支持重复字符合并
背景说明:
给定一个字符串`s`,要求将其压缩为更短的表示形式。压缩规则如下:
1.若字符连续重复`k`次(`k=3`),则用`k+字符`表示(如`aaa`→`3a`)。
2.若字符不重复或重复次数不足3次,保持原样。
要求:
-请实现一个函数`compressString(s)`,返回压缩后的字符串。
示例输入:
plaintext
s=aabcccaaa
compressString(s)//输出a2b1c3a4
解析:
1.分段处理:`aa+bcc+caaa`→`a2+b1c3+a4`→`a2b1c3a4`。
二、算法设计题(共2题,每题20分,共40分)
题目4(20分):设计一个无重复数字的随机数生成器
背景说明:
给定一个范围`[1,n]`(`n`≤10^6),要求生成一个无重复的随机数序列,且每个数字出现的概率相同。
要求:
1.请设计一个高效的算法,支持`O(n)`的预处理时间和`O(1)`的随机数生成时间。
2.请说明核心思路及代码实现。
解析提示:
-可参考Fisher-Yates洗牌算法(随机交换)。
-预处理时将`[1,n]`排列,随机交换元素至随机位置。
题目5(20分):实现一个滑动窗口最大值函数
背景说明:
给定一个数组`nums`和一个窗口大小`k`,要求返回一个新数组,其中每个位置`i`的值表示以`i`为右端点的`k`大小窗口内的最大值。
要求:
1.请实现一个函数`maxSlidingWindow(nums,k)`,返回结果数组。
2.时间复杂度要求`O(n)`,空间复杂度`O(k)`。
示例输入:
plaintext
nums=[1,3,-1,-3,5,3,6,7]
k=3
maxSlidingWindow(nums,k)//输出[3,3,5,5,6,7]
解析提示:
-使用双端队列维护窗口最大值,队列中存储索引,保证队首始终是当前窗口最大值。
-滑动时移除队列中不在窗口的索引,并添加新元素的索引。
三、编程实现题(共2题,每题25分,共50分)
题目6(25分):实现一个简单的分布式锁服务
背景说明:
分布式系
您可能关注的文档
最近下载
- 2026年鹤壁职业单招试题完美版.docx VIP
- 日成RCCN端子系列.pdf VIP
- 2026湖北十堰市教育局直属高中招聘教师100人笔试模拟试题及答案解析.docx VIP
- 2025年互联网营销师搜索引擎广告平台与账户搭建专题试卷及解析.pdf VIP
- 2026湖北十堰市教育局直属高中招聘教师100人笔试备考题库带答案解析.docx VIP
- 浙江农林大学2023-2024学年《数据结构》期末试卷(A卷)及参考答案.docx
- 2026年鹤壁职业技术学院单招职业技能考试题库附答案详解.docx VIP
- 肺血栓栓塞症课件PPT.pptx VIP
- 2026年鹤壁职业技术学院单招职业适应性考试模拟测试卷附答案.docx VIP
- 2026年鹤壁职业技术学院单招职业倾向性测试题库附答案.docx VIP
原创力文档

文档评论(0)