小米技术团队面试常见问题集.docxVIP

  • 2
  • 0
  • 约7.14千字
  • 约 19页
  • 2026-10-20 发布于福建
  • 举报

第PAGE页共NUMPAGES页

2026年小米技术团队面试常见问题集

一、编程基础与算法(共5题,每题10分,总分50分)

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

答案:

python

defsieve_of_eratosthenes(n):

ifn2:

return[]

is_prime=[True](n+1)

is_prime[0]=is_prime[1]=False

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

ifis_prime[i]:

forjinrange(ii,n+1,i):

is_prime[j]=False

return[ifori,primeinenumerate(is_prime)ifprime]

解析:埃拉托斯特尼筛法(SieveofEratosthenes)是一种高效的质数筛选算法,时间复杂度为O(nloglogn)。通过标记非质数,最终保留质数。代码中先初始化一个布尔数组,然后从2开始遍历到sqrt(n),将每个质数的倍数标记为非质数。

2.题目:给定一个字符串,请判断是否可以通过回溯法将其分割为回文子串的列表。例如,输入aab,可以分割为[aa,b]或[a,a,b]。

答案:

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档