- 0
- 0
- 约4.36千字
- 约 11页
- 2026-11-05 发布于福建
- 举报
第PAGE页共NUMPAGES页
2026年微软面试技巧及常见问题解析
一、编程题(共5题,每题20分,总分100分)
题目1:
问题描述:
给定一个字符串,请编写一个函数,返回该字符串中不重复字符的最长子串的长度。例如,输入abcabcbb,输出abcbb的长度3。
答案:
python
deflength_of_longest_substring(s:str)-int:
char_set=set()
left=0
max_length=0
forrightinrange(len(s)):
whiles[right]inchar_set:
char_set.remove(s[left])
left+=1
char_set.add(s[right])
max_length=max(max_length,right-left+1)
returnmax_length
解析:
使用滑动窗口技术,`left`和`right`分别表示窗口的左右边界。遍历字符串时,如果`right`指向的字符已存在于窗口中,则移动`left`直到窗口中无重复字符。每次更新最大长度。时间复杂度O(n),空间复杂度O(min(m,n)),m为字符集大小。
题目2:
问题描述:
实现一个LRU(LeastRecentlyUsed)缓存,支持ge
原创力文档

文档评论(0)