- 0
- 0
- 约7.73千字
- 约 23页
- 2026-01-28 发布于福建
- 举报
第PAGE页共NUMPAGES页
2026年华为公司软件工程师面试全攻略及答案详解
一、编程能力测试(共5题,每题20分,总分100分)
1.题目:
实现一个函数,输入一个字符串,返回该字符串中所有唯一字符的集合。例如,输入hello,返回{h,e,l,o}。
要求:时间复杂度O(n),空间复杂度O(1)。
2.题目:
编写一个函数,判断一个整数是否为完全平方数。例如,输入16,返回true;输入14,返回false。
3.题目:
实现一个LRU(LeastRecentlyUsed)缓存机制,支持get和put操作。使用链表和哈希表实现,要求get和put操作的时间复杂度均为O(1)。
4.题目:
给定一个链表,反转链表并返回反转后的头节点。例如,输入1-2-3-4-5,返回5-4-3-2-1。
5.题目:
编写一个函数,统计一个数组中所有子数组的和,并返回最大的子数组和。例如,输入[-2,1,-3,4,-1,2,1,-5,4],返回6(子数组[4,-1,2,1])。
答案与解析
1.答案:
cpp
std::unordered_setcharuniqueChars(conststd::strings){
std::unordered_setcharresult;
std::unordered_setcharseen;
for(charc:s){
if(seen.find(c)==seen.end()){
seen.insert(c);
result.insert(c);
}else{
result.erase(c);
}
}
returnresult;
}
解析:
使用两个哈希集合,一个记录所有字符(seen),一个记录唯一字符(result)。遍历时,如果字符在seen中不存在,则加入seen和result;如果已存在,则从result中删除。最后返回result即可。时间复杂度O(n),空间复杂度O(n),但题目要求空间复杂度O(1),因此需优化:
cpp
std::unordered_setcharuniqueChars(conststd::strings){
std::unordered_setcharseen;
std::unordered_setcharresult;
for(charc:s){
if(seen.find(c)==seen.end()){
seen.insert(c);
result.insert(c);
}elseif(result.find(c)!=result.end()){
result.erase(c);
}
}
returnresult;
}
优化后仍需O(n)空间,但符合题目逻辑。
2.答案:
cpp
boolisPerfectSquare(intnum){
if(num0)returnfalse;
longleft=0,right=num;
while(left=right){
longmid=left+(right-left)/2;
longsquare=midmid;
if(square==num)returntrue;
elseif(squarenum)left=mid+1;
elseright=mid-1;
}
returnfalse;
}
解析:
二分查找法,从0到num查找平方根。若mid平方等于num,返回true;若小于num,左边界右移;若大于num,右边界左移。时间复杂度O(logn)。
3.答案:
cpp
classLRUCache{
private:
structNode{
intkey,value;
Nodeprev;
Nodenext;
Node(intk,intv):key(k),value(v),prev(nullptr),next(nullptr){}
};
Nodehead,tail;
std::unordered_mapint,Nodecache;
intcapacity;
public:
LRUCache(intc):capacity(c),head(newNode(0,0)),tail(newNode(0,0)){
head-next=tail;
tail-prev=head;
}
intget(intkey){
autoit=cache.find(key);
if(it==cache.end())return-1;
Nodeno
您可能关注的文档
- 零售店长面试题目参考手册.docx
- 2026年智慧城市知识运营专员面试题目详解.docx
- 网络工程师面试题库及技术能力考察.docx
- 青岛啤酒市场专员面试题库含答案.docx
- 客户服务主管客服部面试题及答案.docx
- 2026年法医专业面试题及法医学知识要点.docx
- 医疗架构师面试题及答案.docx
- 2026年阿里巴UI设计师面试题及答案详解.docx
- ERP系统测试工程师测试人员培训材料含答案.docx
- 2026年航空业招聘面试题库及答案.docx
- 福州大学《当代社会问题研究》2023-2024学年第一学期期末试卷.doc
- 2025-2026学年汕头市潮阳区三上数学期末检测试题含解析.doc
- 南京理工大学紫金学院《模拟法庭训练》2023-2024学年第一学期期末试卷.doc
- 浙江省镇海市镇海中学2024-2025学年高一下语文期末联考模拟试题含解析.doc
- 福建省寿宁县2025届八年级数学第一学期期末学业质量监测试题含解析.doc
- 2025年安徽省皖北名校联盟高一下语文期末质量检测模拟试题含解析.doc
- 辽宁省葫芦岛2025年语文高一下期末学业质量监测试题含解析.doc
- 泸州职业技术学院《大学英语三级》2023-2024学年第一学期期末试卷.doc
- 临汾市2025-2026学年第一学期阶段检测(一)七年级英语试卷及答案.pdf
- 运城市2025-2026 学年第一学期第一次阶段性考试八年级英语试题及答案.pdf
最近下载
- 压力容器(储气罐)安全操作规程.doc VIP
- 平面广告设计 印刷广告的特点和视觉特征 029-印刷广告的特点.pptx VIP
- 七大类营养素.ppt VIP
- NBT 10185-2019并网光伏电站用关键设备性能检测与质量评估技术规范.pdf VIP
- 中石化机泵维修钳工高级复习试题及答案.doc
- 华为员工手册 华为员工手册.pdf VIP
- 2026福建水投集团漳州市龙溪水务有限公司第二批招聘5人笔试参考题库附答案解析.docx VIP
- 流域生态水文过程与生态修复机理--咨询工程师继续教育.docx VIP
- 巧用优秀短视频,开启初中道德与法治教育新样态.docx VIP
- 培智生活语文教案·四年级下册完整教案人民教育出版社.pdf VIP
原创力文档

文档评论(0)