- 2
- 0
- 约5.5千字
- 约 16页
- 2026-01-30 发布于福建
- 举报
第PAGE页共NUMPAGES页
2026年工程师面试题及专业问题解答
一、编程与算法(5题,每题10分,共50分)
1.题目:
请用Python实现一个函数,输入一个正整数`n`,返回其阶乘的值。要求:不能使用递归或内置的`math.factorial`函数。
答案与解析:
python
deffactorial(n):
result=1
foriinrange(1,n+1):
result=i
returnresult
解析:
-迭代法通过循环计算阶乘,避免递归的栈溢出风险。
-时间复杂度为O(n),空间复杂度为O(1)。
2.题目:
给定一个无重复元素的数组`nums`和一个目标值`target`,请编写函数返回`target`在数组中的索引(如果不存在则返回-1)。要求:时间复杂度不超过O(logn)。
答案与解析:
python
defsearch(nums,target):
left,right=0,len(nums)-1
whileleft=right:
mid=(left+right)//2
ifnums[mid]==target:
returnmid
elifnums[mid]target:
left=mid+1
else:
right=mid-1
re
原创力文档

文档评论(0)