Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/160.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ Zobrist密钥的高效数据结构_C++ - Fatal编程技术网

C++ Zobrist密钥的高效数据结构

C++ Zobrist密钥的高效数据结构,c++,C++,Zobrist键是棋盘游戏中使用的64位散列值,以单音形式表示在树搜索过程中找到的不同位置。它们通常存储在大小为1000K或更大的数组中(每个条目大约10字节长)。该表通常通过hashKey%size作为索引访问。您将使用什么样的STL容器来表示这种表?考虑到由于桌子的大小有限,碰撞可能会发生。对于“普通”数组,我必须处理这种情况,因此我想到了无序的_映射,但由于没有指定实现,我不确定在填充映射时它的效率如何 在我看来,一个标准的hashmap非常适合你-非常快速的查找,它将为你可靠地、不可见地

Zobrist键是棋盘游戏中使用的64位散列值,以单音形式表示在树搜索过程中找到的不同位置。它们通常存储在大小为1000K或更大的数组中(每个条目大约10字节长)。该表通常通过
hashKey%size
作为索引访问。您将使用什么样的STL容器来表示这种表?考虑到由于桌子的大小有限,碰撞可能会发生。对于“普通”数组,我必须处理这种情况,因此我想到了无序的_映射,但由于没有指定实现,我不确定在填充映射时它的效率如何

在我看来,一个标准的hashmap非常适合你-非常快速的查找,它将为你可靠地、不可见地处理冲突。

如果你想探索STL之外的其他领域,看看:这些应该适合你的问题

如果你在Linux上,你可以很容易地使用它们进行实验,只需从你的存储库中安装

申请说明有助于解决您的任务

编辑


有STL接口:我将对其进行实验,然后报告结果。

您需要
地图
还是
集合
就足够了?