爱奇艺2019校园招聘算法类岗位笔试题目回忆版本

题型总共分为两种,第一种是不定项选择,共有20道(每道3分,共计60分),然后是两道在线编程(每道20分,共计40分),一共是两个小时。题主没有做出来在线编程,由于基础比较薄弱,在不定项选择上面花费了比较多的时间,导致最后的在线编程时间比较紧张,但是还是有必要总结一下过往。

第一种题型:不定项选择

1 设Hash表长为11,哈希函数为Hash(key) = key % 11。存在关键码{43,7,29,22,16,92,44,8,19},采用二元探测法处理冲突,则建立的Hash表为:

解析:采用开放定址法处理冲突中的二次探测再散列(也即是题目中的二元探测法),则哈希函数变为Hash(key) = (Hash(key)  + d) % 11,其中d = 1^2, -1^2, 2^2, -2^2, 3^2,……,则开始计算。

对于43,代入公式为Hash(43) = 43 % 11 = 10, 则地址为10;

对于7,代入公式为Hash(7) = 7 % 11 = 7,则地址为7;

对于29,代入公式为Hash(29) = 29 % 11 = 7, 与7冲突,则采用二次探测进行消除冲突, 继续(7 + 1) % 11 = 8,没有冲突,则地址为8;

对于22,代入公式Hash(22) = 22 % 11 = 0, 则地址为0;

对于16,代入公式Hash(16) = 16 % 11 = 5, 则地址为5;

对于92,代入公式Hash(92) = 92 % 11 = 4,则地址为4;

对于44,代入公式Hash(44) = 44 % 11 = 0, 与22的地址冲突,则继续(0 + 1) % 11 = 1,没有冲突,则地址为1;

扫描二维码关注公众号,回复: 3411060 查看本文章

对于8, 代入公式Hash(8) = 8 % 11 = 8, 与29有冲突,则继续(8 + 1) % 11 = 9, 没有冲突,则地址为9;

对于19,代入公式Hash(19) = 19 % 11 = 8. 与 29有冲突,则继续(8 + 1) * 11 = 9, 与8有冲突,继续(8 - 1) % 11 = 7, 与7有冲突,则继续(8 + 4) % 11 = 1, 与44有冲突,则继续(8 - 4) % 11 = 4, 与92有冲突,则继续(8 + 9) % 11 = 6, 没有冲突,则地址为6.

所以最后得到的Hash表为下图所示:

0 1 2 3 4 5 6 7 8 9 10
22 44     92 16 19 7 29 8 43

2 在一个空的5阶B-树中依次插入关键字序列{6,8,15,16,22,10,18,32,20},插入完成后,关键字6所在结点包含的关键字个数为()

A   5

B   2

C   4

D   3

解析:

猜你喜欢

转载自blog.csdn.net/qq_33221533/article/details/82730335