华为面试题解析技术岗位的选拔标准.docxVIP

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

华为面试题解析技术岗位的选拔标准.docx

第PAGE页共NUMPAGES页

2026年华为面试题解析:技术岗位的选拔标准

一、编程能力测试(共5题,每题10分,总分50分)

1.题目:

请实现一个函数,输入一个正整数`n`,返回`n`的阶乘。要求使用递归和迭代两种方法实现,并分析时间复杂度。

答案:

递归方法:

python

deffactorial_recursive(n):

ifn==0:

return1

returnnfactorial_recursive(n-1)

时间复杂度:O(n),因为每层递归调用一次自身。

迭代方法:

python

deffactorial_iterative(n):

result=1

foriinrange(1,n+1):

result=i

returnresult

时间复杂度:O(n),因为需要遍历从1到n的所有数字。

解析:

递归方法简洁但可能导致栈溢出(尤其是大数阶乘),迭代方法更稳定。华为倾向于考察候选人对不同方法的优缺点理解。

2.题目:

给定一个字符串`s`,请判断其是否为有效的括号字符串(例如`()`、`()[]{}`有效,`(]`无效)。要求使用栈实现,并说明时间复杂度。

答案:

python

defisValid(s):

stack=[]

mapping={):(,]:[,}:{}

for

文档评论(0)

1亿VIP精品文档

相关文档