我遇到了一个碰撞构建哈希表,它的数据集相当小(~100 k行)。我在这里做错什么了吗?
下面是一个2位数据的例子,这些数据通常会产生相同的哈希。(偶尔运行会产生不同的散列):
long long1 = 330765;
long long2 = 227691;
DateTime date1= new DateTime(2016, 5, 24);
DateTime date2= new DateTime(2016, 1, 25);
var c1 = HashCode.Combine(long1, date1);
var c2 = HashCode.Combine(long2, date2);
C
几个星期以来,我一直在努力实现我的自上而下的游戏。它在一段时间内运行得很好,但后来我想创建一个到处都是墙的滚动地图。现在,为了便于创建地图(并在稍后添加更多),我创建了一个名为"Wall“的类,我将对其进行测试。这是有效的,当它命中时,地图必须停止滚动。是的,到目前为止一切都很好。
现在,当玩家离开物体时,我希望地图能够再次滚动,这也是可行的,但现在玩家不能移动到玩家所在的一侧。我知道这是因为我需要定义玩家进入的边,以便告诉游戏在这一点上必须将哪个移动设置为零。
你可以在这里看到代码:
public function AddWalls(player:MovieClip)
{
W
对于任何哈希函数,从概念上讲或其他方面,上述两个操作之间的区别是什么。我以以下方式处理这个问题:
H=hash(someplaintext)
n=0
while 1:
if hash(str(n))==H:
print n
n+=1
这两个属性都可以这样证明,是不是出了什么问题?忽略效率、内存使用或任何此类属性。请严格按照正确的原则回答我的问题。