2026年互联网行业技术面试题及答案详解.docxVIP

  • 0
  • 0
  • 约5.59千字
  • 约 15页
  • 2026-05-29 发布于福建
  • 举报

2026年互联网行业技术面试题及答案详解.docx

第PAGE页共NUMPAGES页

2026年互联网行业技术面试题及答案详解

一、编程题(共3题,每题20分,总分60分)

要求:以下编程题需在Python或Java中实现,并说明时间复杂度和空间复杂度。

1.(20分)实现一个无重复字符的最长子串查找功能。给定一个字符串`s`,返回其最长无重复字符的子串长度。例如:

-输入:`s=abcabcbb`

-输出:`3`(最长无重复子串为abc)

答案:

python

deflength_of_longest_substring(s:str)-int:

char_set=set()

left=0

max_len=0

forrightinrange(len(s)):

whiles[right]inchar_set:

char_set.remove(s[left])

left+=1

char_set.add(s[right])

max_len=max(max_len,right-left+1)

returnmax_len

解析:

-使用滑动窗口技术,`left`和`right`分别表示窗口的左右边界。

-遍历字符串时,若`char_set`中已存在`s[right]`,则移动`left`并移除`s[left]`,直到窗口无重复字符。

-时间复杂度:O(n),

文档评论(0)

1亿VIP精品文档

相关文档