A.找到两个具有不同哈希值的相同消息
B.使用相同的哈希查找两个相同的消息
C.找到两个特定消息之间的共同点
D.找到特定消息和随机消息之间的公共哈希
A.算法效率高,计算哈希值的时间短
B.可以根据任意长度的消息计算出固定长度的散列
C.不同的输入可以有相同的输出
D.单向性,只能由输入的数据或者消息计算出一个定长的哈希值,而不能反向计算
A.哈希函数构造的越复杂越好,因为这样随机性好,冲突小
B.除留余数法是所有哈希函数中最好的
C.不存在特别好与坏的哈希函数,要视情况而定
D.若需在哈希表中删去一个元素,不管用何种方法解决冲突都只要简单地将该元素删去即可
比如,在仅能使用直尺的情况下,可通过反复实验,用鸡蛋刚能摔碎的下落高度(比如精确到毫米)来度量蛋壳的硬度。尽管可以假定在破裂之前蛋壳的硬度保持不变,但毕竟破裂是不可逆的。故若仅有一枚鸡蛋,则我们不得不从0开始,以1毫米为单位逐步增加下落的高度,若蛋壳的硬度不超过n毫米,则需要进行o(n)次实验。就效率而言,这等价于退化到无序向量的顺序查找。
a)若你拥有两枚鸡蛋(假定它们硬度完全相同),所需实验可减少到多少次?试给出对应的算法;
b)进一步地,如果你拥有三枚鸡蛋呢?
c)一般地,如果共有d枚鸡蛋可用呢?
(1)画出描述上述查找过程的判定树。
(2)计算等搜索概率下搜索成功的平均搜索长度。
(3)计算等搜索概率下搜索不成功的平均搜索长度。
A.加噪
B.截断
C.哈希
D.置换