后端开发面试题解析.docxVIP

  • 0
  • 0
  • 约6.33千字
  • 约 19页
  • 2026-10-30 发布于福建
  • 举报

第PAGE页共NUMPAGES页

2026年后端开发面试题解析

一、编程语言与基础算法(10题,共40分)

1.题目(4分):

请用Python实现一个函数,输入一个正整数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]

解析:埃拉托斯特尼筛法(时间复杂度O(nloglogn)),通过标记非素数来筛选出所有素数。外层循环到√n即可,因为大于√n的合数必有一个小于√n的因数。

2.题目(4分):

用Java实现快速排序算法,并说明其平均时间复杂度和最坏情况下的时间复杂度。

答案与解析:

java

publicstaticvoidquickSort(int[]arr,intlef

文档评论(0)

1亿VIP精品文档

相关文档