- 0
- 0
- 约9.01千字
- 约 27页
- 2026-01-16 发布于福建
- 举报
第PAGE页共NUMPAGES页
2026年华为软件开发工程师面试全攻略及题库
一、编程能力测试(共5题,每题20分,总分100分)
题目1(20分):字符串处理
题目:给定一个字符串,要求找出其中最长的不重复字符子串的长度。例如,输入abcabcbb,返回3(对应子串abc)。
要求:
1.不能使用额外的数据结构(如哈希表)。
2.时间复杂度要求O(n)。
3.写出C++实现。
答案:
cpp
includeiostream
includestring
includealgorithm
intlengthOfLongestSubstring(conststd::strings){
if(s.empty())return0;
intmaxLen=0;
intstart=0;
intcharIndex[128];//ASCII字符集
std::fill(charIndex,charIndex+128,-1);
for(inti=0;is.length();++i){
charch=s[i];
if(charIndex[ch]=start){
start=charIndex[ch]+1;
}
charIndex[ch]=i;
maxLen=std::max(maxLen,i-start+1);
}
returnmaxLen;
}
intmain(){
std::stringinput=abcabcbb;
std::cout最长不重复子串长度:lengthOfLongestSubstring(input)std::endl;
return0;
}
解析:
1.使用固定大小的数组记录字符最后出现的位置,避免使用哈希表
2.维护一个滑动窗口的起始位置start
3.当发现重复字符时,更新start为重复字符的下一个位置
4.每次迭代计算当前窗口大小并与最大值比较
5.时间复杂度O(n),空间复杂度O(1)
题目2(20分):动态规划
题目:给定一个整数数组,判断是否存在三个元素a,b,c,使得a+b+c=0。找出所有不重复的三元组。要求时间复杂度低于O(n2)。
要求:
1.输出所有和为0的不重复三元组
2.可以排序后使用双指针优化
3.写出C++实现
答案:
cpp
includeiostream
includevector
includealgorithm
std::vectorstd::vectorintthreeSum(std::vectorintnums){
std::vectorstd::vectorintresult;
if(nums.size()3)returnresult;
std::sort(nums.begin(),nums.end());
for(inti=0;inums.size()-2;++i){
//跳过重复元素
if(i0nums[i]==nums[i-1])continue;
intleft=i+1;
intright=nums.size()-1;
inttarget=-nums[i];
while(leftright){
intsum=nums[left]+nums[right];
if(sum==target){
result.push_back({nums[i],nums[left],nums[right]});
//跳过重复元素
while(leftrightnums[left]==nums[left+1])left++;
while(leftrightnums[right]==nums[right-1])right--;
left++;
right--;
}elseif(sumtarget){
left++;
}else{
right--;
}
}
}
returnresult;
}
intmain(){
std::vectorintnums={-1,0,1,2,-1,-4};
std::vectorstd::vectorintresult=threeSum(nums);
for(constautotriplet:result){
std::cout(triplet[0],triplet[1],triplet[2]);
}
return0;
}
解析:
1.首先排序
您可能关注的文档
- 2026年三副面试题及答案解析.docx
- 2026年电视节目策划与设计技能考核题集.docx
- 2026年保险业精英面试指南保险策划经理考试题及答案.docx
- 2026年财务分析师笔试题库含答案.docx
- 2026年网络营销岗位面试题与策略.docx
- 2026年航空航天企业自动化测试工程师的年度工作安排.docx
- 2026年企业培训专员常见面试题集.docx
- 2026年港口电机员年度工作安排及考核.docx
- 2026年IT项目管理的核心能力与面试题详解.docx
- 2026年中兴通讯技术部面试题及答案参考.docx
- 安徽省华师联盟2025-2026学年高三上学期1月质量检测生物试卷+答案.doc
- 安徽省华师联盟2025-2026学年高三上学期1月质量检测语文试卷+答案.doc
- 四川省绵阳南山中学实验学校2025-2026学年高三上学期1月月考数学含答案.doc
- 2026届辽宁省大连市高三上学期双基考试物理试卷+答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测化学含答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测生物含答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测英语含答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测政治含答案.doc
- 黑龙江省龙江教育联盟2026年1月高三上学期期末考试化学含答案.doc
- 黑龙江省龙江教育联盟2026年1月高三上学期期末考试生物含答案.doc
原创力文档

文档评论(0)