我应该在Rust中的稀疏Vec或HashMap中存储具有大孔的序列中的无序值吗?

问题描述 投票:-1回答:1

我有一个包含数百万行数据的文件。每行都有一个唯一的ID,并且ID系列很多次不按顺序排列,并且可以包含孔。例如1, 2, 10, 6, 3, 18

我希望能够通过ID快速访问行,因此我认为将它们存储在HashMap中可能是一个可行的解决方案,但是当将它们存储在Vec中时,这感觉像是过分的。] >

当系列中的孔变得非常大(Vec等)时,将它们存储在1, 2, 3, 1000000, 1000001...中是一个好的解决方案吗?我将丢弃很多行。应该使用某种HashMap吗?

我有一个包含数百万行数据的文件。每行都有一个唯一的ID,并且ID系列很多次不按顺序排列,并且可以包含孔。例如1、2、10、6、3、18。我希望能够...

vector rust hashmap
1个回答
1
投票

HashMap肯定会很好。根据数据,稀疏的Vec可能会更好地工作,可能无法很好地工作或完全失败。最安全,最简单的选择是使用HashMap并重新访问该问题,如果发现需要优化此特定功能(您可能不会这样做)。

© www.soinside.com 2019 - 2024. All rights reserved.