百度校园招聘笔试题目(2)

时间:2024-08-23 13:44:04 学人智库 我要投稿
  • 相关推荐

百度校园招聘笔试题目(2)

  3、一个大的含有50M个URL的记录,一个小的含有500个URL的记录,找出两个记录里相同的URL。

百度校园招聘笔试题目(2)

  回答:

  首先使用包含500个url的文件创建一个hash_set。

  然后遍历50M的url记录,如果url在hash_set中,则输出此url并从hash_set中删除这个url。

  所有输出的url就是两个记录里相同的url。

  4、海量日志数据,提取出某日访问百度次数最多的那个IP。

  回答:

  如果日志文件足够的大,大到不能完全加载到内存中的话。

  那么可以考虑分而治之的策略,按照IP地址的hash(IP)%1024值,将海量日志存储到1024个小文件中。每个小文件最多包含4M个IP地址。

  对于每个小文件,可以构建一个IP作为key,出现次数作为value的hash_map,并记录当前出现次数最多的1个IP地址。

  有了1024个小文件中的出现次数最多的IP,我们就可以轻松得到总体上出现次数最多的IP。

  5、蚂蚁爬杆问题

  有一根27厘米长的细木杆,在第3厘米,7厘米,11厘米,17厘米,23厘米这五个位置上各有一只蚂蚁,木杆很细,不能同时通过两只蚂蚁,开始时,蚂蚁的头朝向左还是右是任意的,他们只会朝前走或掉头,但不会后退,当两只蚂蚁相遇后,蚂蚁会同时掉头朝反方向走,假设蚂蚁们每秒钟可以走1厘米的距离。求所有蚂蚁都离开木杆的最小时间和最大时间。

  答案:

  两只蚂蚁相遇后,各自掉头朝相反方向走。如果我们不考虑每个蚂蚁的具体身份,这和两只蚂蚁相遇后,打个招呼继续向前走没有什么区别。

  所有蚂蚁都离开木杆的最小时间为

  max(min(3,27-3),min(7,27-7), min(11,27-11), min(17,27-17),min(23,27-23))=11

  所有蚂蚁都离开木杆的最大时间为

  max(max(3,27-3),max(7,27-7), max(11,27-11), max(17,27-17),max(23,27-23))=24

  6、有10个文件,每个文件1G,每个文件的每一行都存放的是用户的query,每个文件的query都可能重复。如何按照query的频度排序?

  回答:

  1)读取10个文件,按照hash(query)%10的结果将query写到对应的文件中。这样我们就有了10个大小约为1G的文件。任意一个query只会出现在某个文件中。

  2)对于1)中获得的10个文件,分别进行如下操作

  -利用hash_map(query,query_count)来统计每个query出现的次数。

  -利用堆排序算法对query按照出现次数进行排序。

  -将排序好的query输出的文件中。

  这样我们就获得了10个文件,每个文件中都是按频率排序好的query。

  3)对2)中获得的10个文件进行归并排序,并将最终结果输出到文件中。

https://www.unjs.com/

【百度校园招聘笔试题目(2)】相关文章:

校园招聘笔试试题(2)10-07

银行招聘英语笔试题目04-15

新疆小学数学教师招聘笔试题目(2)10-18

自主招生笔试题目(2)09-05

网易java笔试题目(2)10-25

百度校园招聘面试题07-13

百度技术研发类笔试题(2)08-31

南京银行笔试题目(2)10-02

电信笔试题目及答案(2)06-05

陕西事业单位笔试题目(2)08-31