gpt4 book ai didi

javascript - 反向字符串比较

转载 作者:行者123 更新时间:2023-11-28 06:00:36 26 4
gpt4 key购买 nike

我正在使用字典(关联数组、哈希表、任何这些同义词)。

用于唯一标识值的键是相当长的字符串。但是,我知道这些字符串往往在尾部而不是头部有所不同。

在 JS 对象中查找值的最快方法是测试是否存在object[key],但在相当大的字典 (+1000条目)?

对于这种情况是否有替代方案,或者这是一个完全没有实际意义的问题,因为通过键访问值已经非常快了?

最佳答案

长话短说;没关系。 JS 将在内部使用哈希表(正如您自己所说的那样),因此它将需要计算用于插入和(在某些情况下)访问元素的键的哈希值。

计算哈希(对于最合理的哈希函数),长键比短键花费的时间稍长(我猜是线性更长),但变化是在尾部还是在头部并不重要。

您可以决定滚动自己的哈希值,以某种方式缓存它们,并将它们用作键,但这将由您来处理哈希冲突。很难比默认实现做得更好,而且几乎肯定不值得这么麻烦。

此外,对于只有 1000 个元素的关联数组,这些可能都不重要。现代 CPU 每秒可以处理接近/大约数十亿条指令。即使只是对整个数组进行线性搜索也可能表现得很好,除非您必须经常这样做。

关于javascript - 反向字符串比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37300731/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com