华为研发部门面试经验与答案.docxVIP

  • 0
  • 0
  • 约4.15千字
  • 约 13页
  • 2026-11-10 发布于福建
  • 举报

第PAGE页共NUMPAGES页

2026年华为研发部门面试经验与答案

一、编程与算法(共5题,每题10分,总分50分)

1.题目:

给定一个字符串,请编写一个函数,统计其中所有唯一字符的数量(即只出现一次的字符)。例如,输入hello,输出3(h,e,o是唯一的)。

要求:时间复杂度O(n),空间复杂度O(1)。

答案:

c++

intcountUniqueChars(conststd::strings){

intcount[256]={0};//ASCII字符集

for(charc:s){

count[c]++;

}

intuniqueCount=0;

for(inti=0;i256;i++){

if(count[i]==1)uniqueCount++;

}

returnuniqueCount;

}

解析:

-使用固定大小的数组统计字符频率(空间O(1)),遍历字符串统计频率(时间O(n))。

-最后统计频率为1的字符数量。华为注重代码效率,此解法符合要求。

2.题目:

实现一个LRU(LeastRecentlyUsed)缓存,支持get和put操作。缓存容量为固定值。

要求:时间复杂度O(1)。

答案:

python

classLRUCache:

def__init__(self,

文档评论(0)

1亿VIP精品文档

相关文档