- 3
- 0
- 约6.61千字
- 约 19页
- 2026-03-10 发布于福建
- 举报
第PAGE页共NUMPAGES页
2026年电信业软件工程师面试题集及解答
一、编程基础题(共5题,每题10分,总分50分)
题目1(10分)
编写一个函数,实现快速幂算法,计算a的b次方(b为非负整数)。要求在O(logb)的时间复杂度内完成。
答案:
python
defquick_pow(a,b):
ifb==0:
return1
ifb==1:
returna
result=1
current=a
whileb0:
ifb%2==1:
result=current
current=current
b//=2
returnresult
解析:
快速幂算法通过将指数b分解为二进制形式,每次将当前结果与基数相乘,并将基数平方,然后将指数右移一位。这样可以将时间复杂度从O(b)降低到O(logb)。例如,计算a^13:
-13的二进制为1101
-计算a^1,a^2,a^4,a^8
-最终结果为a^(1+4+8)=a^13
题目2(10分)
给定一个整数数组,设计一个算法找出数组中的最长连续递增子序列的长度。要求时间复杂度为O(n)。
答案:
python
deflongest_consecutive_increasing_subsequence(arr):
ifnotarr:
ret
您可能关注的文档
最近下载
- 给排水国标图集-04S531-3:湿陷性黄土地区给水排水检漏井.pdf VIP
- 2020春西南大学继续教育[9123]《计算机辅助设计》作业答案.pdf VIP
- 固定资产投资分析报告.doc VIP
- GB50286-2013 堤防工程设计规范 (2).pdf VIP
- (新版)高级考评员职业技能鉴定考试题库(含答案).docx VIP
- 一汽奥迪-A4L-产品使用说明书-2014款A4L 40 TFSI quattro 个性运动版-FV7203BCDWG-A4.pdf VIP
- 夏商周考古全套课件.pptx
- Mettler Toledo梅特勒-托利多水分仪V20S V30S C20S C30S T5 T7 T9用户手册.pdf
- 模块1-动车组列车服务质量规范实训《高速铁路客运乘务实训教程》教学课件.pptx VIP
- 急性创面临床处置专家共识.pdf VIP
原创力文档

文档评论(0)