2026年大数据科学家面试题目及答案详解.docxVIP

  • 2
  • 0
  • 约3.23千字
  • 约 9页
  • 2026-03-10 发布于福建
  • 举报

2026年大数据科学家面试题目及答案详解.docx

第PAGE页共NUMPAGES页

2026年大数据科学家面试题目及答案详解

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

题目1(Python编程):

请编写Python代码,实现一个函数`top_k_frequent(nums,k)`,输入一个整数列表`nums`和一个整数`k`,返回`nums`中出现频率最高的`k`个数字。要求不使用内置排序函数,时间复杂度尽可能低。

答案:

python

fromcollectionsimportdefaultdict

deftop_k_frequent(nums,k):

freq=defaultdict(int)

fornuminnums:

freq[num]+=1

bucket=[[]for_inrange(len(nums)+1)]

fornum,countinfreq.items():

bucket[count].append(num)

result=[]

foriinrange(len(bucket)-1,0,-1):

fornuminbucket[i]:

result.append(num)

iflen(result)==k:

returnresult

解析:

-使用哈希表统计每个数字的频率,时间复杂度O(n)。

-创建桶排序

文档评论(0)

1亿VIP精品文档

相关文档