在 javascript 中,我有一个键值对的哈希映射,例如:
"team", "aemt"
"meat", "aemt"
"car", "acr"
我想用字符串的长度存储所有匹配的值,如下所示:
{4, {"team","meat"}}
{3, {"car"}
我将如何做到这一点?
在 javascript 中,我有一个键值对的哈希映射,例如:
"team", "aemt"
"meat", "aemt"
"car", "acr"
我想用字符串的长度存储所有匹配的值,如下所示:
{4, {"team","meat"}}
{3, {"car"}
我将如何做到这一点?
不需要按长度划分集合,散列算法应该能够自行处理。仅当您要按长度对单词进行排序时,才建议这样做。
将每个键的多个值存储在哈希表中
你不能。但是,您可以为每个键存储一个字符串数组。
var words = ["team", "meat", "car"],
map = {};
for (var i=0; i<words.length; i++) {
var key = words[i].toLowercase().split('').sort().join('');
if (key in map)
map[key].push(words[i]);
else
map[key] = [ words[i] ];
}