【发布时间】:2020-12-23 16:06:26
【问题描述】:
我正在处理 Leetcode 问题,我遇到的一个常见场景是我有一个可以使用的解决方案,但它需要一个哈希表才能将 Key 作为一对 X 和 Y 坐标。在谷歌上搜索时,我找不到任何帮助,这让我相信如果我想以这种方式使用它们,我做错了什么。
这通常出现在图形问题或多维数组问题中。
有人对我应该如何定期实施这个有任何想法吗?或者我应该这样做的任何原因?
我使用的语言是 C#,但我确信它适用于大多数语言。
非常感谢!
【问题讨论】:
-
一个 x,y 坐标散列是图上的一个正方形,角为 1) x min, y min 2) x min y max 3) x max y min 4) x max y max。所以通常你的值是 x min、y min 并将值向下舍入到最小值。因此,如果您有一个从 (0,0) 到 (4,4) 的图,并且您希望哈希大小为 1 x 1,那么 (0,0) 的哈希点将是 x
-
你也可以将你的 x/y 值组合成一个字符串来创建一个键。请务必填充您的值,以便您始终拥有一个明确的固定长度键(例如“0104”)。
标签: c# graph hashmap hashtable