Hash 将ID散列到边界正方形内的随机x,y坐标

Hash 将ID散列到边界正方形内的随机x,y坐标,hash,Hash,我有一个定义的区域(我知道该区域每个角的x,y坐标)。我需要将ID(int或char数组)散列到限制在该边界区域内的x,y点。得到的散列值,即x,y坐标需要是ID的唯一值,最好不要将x,y点全部聚集在正方形的一部分,而是均匀分布在正方形上 有没有关于我该怎么做的建议 非常感谢。首先,我认为你不能保证独一无二。如果您有maxX*maxY+1id,则在同一坐标上必须有两个id 其次,为了避免集群,使用加密安全的散列 第三,要获得x和y坐标(粗略/伪代码): hashResult = hash(ID

我有一个定义的区域(我知道该区域每个角的x,y坐标)。我需要将ID(int或char数组)散列到限制在该边界区域内的x,y点。得到的散列值,即x,y坐标需要是ID的唯一值,最好不要将x,y点全部聚集在正方形的一部分,而是均匀分布在正方形上

有没有关于我该怎么做的建议


非常感谢。首先,我认为你不能保证独一无二。如果您有
maxX*maxY+1
id,则在同一坐标上必须有两个id

其次,为了避免集群,使用加密安全的散列

第三,要获得x和y坐标(粗略/伪代码):

 hashResult = hash(ID)
 x = hashResult modulo maxX.
 y = ( hashResult div maxX) modulo maxY