2026年华为技术部门面试题及解析.docxVIP

  • 0
  • 0
  • 约8.17千字
  • 约 24页
  • 2026-03-26 发布于福建
  • 举报

第PAGE页共NUMPAGES页

2026年华为技术部门面试题及解析

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

题目1(Java编程,20分)

问题描述:

实现一个无重复字符的最长子串。给定一个字符串`s`,返回其最长无重复字符的子串的长度。

示例:

输入:`s=abcabcbb`

输出:`3`(最长无重复字符的子串是abc)

输入:`s=bbbbb`

输出:`1`(最长无重复字符的子串是b)

输入:`s=pwwkew`

输出:`3`(最长无重复字符的子串是wke)

要求:

1.不能使用额外的存储空间(或使用常量空间)。

2.时间复杂度要求为O(n)。

答案:

java

publicintlengthOfLongestSubstring(Strings){

if(s==null||s.length()==0)return0;

//使用两个指针表示滑动窗口的左右边界

intleft=0,right=0;

intmaxLen=0;

//使用一个HashSet记录窗口中的字符

SetCharacterset=newHashSet();

while(rights.length()){

charc=s.charAt(right);

//如果字符已存在,移动左指针并移除字符

while(

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档