- 0
- 0
- 约7.22千字
- 约 21页
- 2026-02-13 发布于福建
- 举报
第PAGE页共NUMPAGES页
2026年百度算法工程师面试题及答案参考
一、编程题(共3题,每题20分)
1.(20分)字符串最长公共子串问题
题目:
给定两个字符串`str1`和`str2`,请编写一个函数,找出并返回它们的最长公共子串的长度。子串是指连续的字符序列。
示例:
输入:`str1=abcdefg`,`str2=xyzabcde`
输出:`6`(公共子串为abcde)
要求:
-使用动态规划方法解决。
-时间复杂度不超过O(nm),n和m分别为两个字符串的长度。
答案与解析:
python
deflongest_common_substring(str1,str2):
m,n=len(str1),len(str2)
dp=[[0](n+1)for_inrange(m+1)]
max_len=0
end_pos=0
foriinrange(1,m+1):
forjinrange(1,n+1):
ifstr1[i-1]==str2[j-1]:
dp[i][j]=dp[i-1][j-1]+1
ifdp[i][j]max_len:
max_len=dp[i][j]
end_pos=i
else:
dp[i][j]=0
returnmax_len
示例
print(longest_common_substring(abcdefg,xyzabcde))#输出6
解析:
-动态规划表`dp[i][j]`表示`str1[:i]`和`str2[:j]`的最长公共子串长度。
-初始条件:`dp[0][j]`和`dp[i][0]`均为0。
-状态转移:若`str1[i-1]==str2[j-1]`,则`dp[i][j]=dp[i-1][j-1]+1`;否则`dp[i][j]=0`。
-通过遍历表找到最大值,其对应的最长公共子串长度为`max_len`。
2.(20分)K个最近邻点问题
题目:
给定一个二维平面上的点集合`points`和一个整数`K`,请编写一个函数,找出距离给定点`query`最近的`K`个点。
示例:
输入:`points=[[1,3],[3,4],[2,6]]`,`K=2`,`query=[2,5]`
输出:`[[1,3],[2,6]]`(按欧氏距离排序)
要求:
-使用快速选择算法(Quickselect)优化时间复杂度至O(n)。
-忽略浮点精度问题,使用整数距离计算。
答案与解析:
python
defk_nearest_points(points,K,query):
defdistance(p1,p2):
return(p1[0]-p2[0])2+(p1[1]-p2[1])2
defpartition(arr,l,r,pivot_idx):
pivot=distance(arr[pivot_idx],query)
arr[pivot_idx],arr[r]=arr[r],arr[pivot_idx]
store_idx=l
foriinrange(l,r):
ifdistance(arr[i],query)pivot:
arr[store_idx],arr[i]=arr[i],arr[store_idx]
store_idx+=1
arr[store_idx],arr[r]=arr[r],arr[store_idx]
returnstore_idx
defquickselect(arr,l,r,K):
ifl==r:
return
pivot_idx=l
pivot_idx=partition(arr,l,r,pivot_idx)
ifK==pivot_idx:
return
elifKpivot_idx:
quickselect(arr,l,pivot_idx-1,K)
else:
quickselect(arr,pivot_idx+1,r,K)
points_sorted=points.copy()
quickselect(points_sorted,0,len(points_sorted)-1,K-1)
returnpoints_sorted[:K]
示例
print(k_nearest_points([[1,3],[3,4],[2,6]],2,[2,5]))#输出[[1,3],[2,6]]
解析:
-快速选择
您可能关注的文档
最近下载
- 重庆天齐锂电新材料有限公司新建1000吨_年高能锂电材料电池级金属锂项目环评报告.pdf VIP
- DB65T 3694-2015 现行哈萨克文与西里尔哈萨克文编码字符转换规则.docx VIP
- TGXAS 1044-2025《中医护理三级查房规范》(发布稿).pdf VIP
- 华为云服务登录.doc VIP
- 采砂场工业用水水资源论证论证表详解.doc VIP
- Onkyo安桥TX-NR828中文说明书.pdf
- 采砂场工业用水水资源论证论证表分析报告.doc
- 【中考】2025年广东佛山数学试卷(原卷+答案).docx VIP
- 2021年广东省佛山市中考数学真题及答案.pdf VIP
- SpaceX火星探索任务成本预算与风险管理分析报告.docx
原创力文档

文档评论(0)