Joe*_*oey 14
号就像一个简单的思想实验:有多少串在那里(提示:许多超过2 32,因此多少独特的哈希码才能有(提示:2 32.看这个问题?)
哈希码只要求是平等的,只要Equals回报率,这两个对象是相等的.此外,每当两个哈希码不相等时,则对象本身不能相等.没有进一步的要求,但它们应该分布良好,以便哈希表可以很好地执行.所以基本上它是:

请注意省略相应的⇐变体.它不是等价的,仅仅是两个含义.
引用文档:
哈希函数必须具有以下属性:
如果两个对象比较相等,则每个对象的GetHashCode方法必须返回相同的值.但是,如果两个对象的比较不相等,则两个对象的GetHashCode方法不必返回不同的值.
只要没有对对象状态的修改来确定对象的Equals方法的返回值,对象的GetHashCode方法必须始终返回相同的哈希代码.请注意,这仅适用于当前应用程序的执行,并且如果再次运行应用程序,则可以返回不同的哈希代码.
为获得最佳性能,哈希函数必须为所有输入生成随机分布.
| 归档时间: |
|
| 查看次数: |
6381 次 |
| 最近记录: |