【发布时间】:2011-06-20 10:16:23
【问题描述】:
我想从文件中读取和处理输入集,然后将其打印出来。
我需要使用 3 个键来存储数据。
假设这 3 个键是 k1, k2, k3
以下哪项会提供更好的性能
$hash{k1}->{k2}->{k3} = $val;
或
$hash{"k1,k2,k3"} = $val;
对于我之前的问题,我得到的答案是所有 perl 哈希键都被视为字符串。
【问题讨论】:
-
每层大约有多少个密钥?
-
我将在每个级别至少有 100 个键..所以总共 300 个键
-
您过早地进行了优化。这将在几毫秒内运行。
-
毫秒,如果不是微秒...
-
我想,他问的是速度。在我的建议中,perl 中的哈希是树,所以,如果你想要更快的速度,你需要更多的树层。如我错了请纠正我。 (而且它还取决于传入键的概率论,所以不可能所有键看起来都像 {k1,k2,kn}, n>=3)