百度公司技术专家面试问题集.docxVIP

  • 0
  • 0
  • 约7.14千字
  • 约 19页
  • 2026-03-09 发布于福建
  • 举报

第PAGE页共NUMPAGES页

2026年百度公司技术专家面试问题集

一、编程基础与数据结构(5题,每题10分,共50分)

题目1(10分)

实现一个函数,输入一个非负整数n,返回所有小于等于n的质数的列表。要求时间复杂度尽可能低。

答案:

python

defget_primes(n):

ifn2:

return[]

sieve=[True](n+1)

sieve[0]=sieve[1]=False

foriinrange(2,int(n0.5)+1):

ifsieve[i]:

forjinrange(ii,n+1,i):

sieve[j]=False

return[ifori,is_primeinenumerate(sieve)ifis_prime]

解析:

采用埃拉托斯特尼筛法(SieveofEratosthenes),时间复杂度为O(nloglogn),比简单的试除法更高效。先创建一个布尔数组标记所有数字是否为质数,然后从2开始筛选,将所有质数的倍数标记为非质数。

题目2(10分)

给定一个字符串,找出其中不重复的最长子串的长度。例如,输入abcabcbb返回3(abc)。

答案:

python

deflength_of_longest_substring(s):

char_

文档评论(0)

1亿VIP精品文档

相关文档