我试图推断一个我只能模拟的过程的马尔可夫链。最终图将包含的状态/顶点的数量非常大,但我不知道提前的顶点数量。
现在我有以下内容:
- 我的模拟在
boost::dynamic_bitset
每个时间步输出一个包含 112 位的值。 - 我使用 bitset 作为 Google Sparse Hash 中的键来映射到一个整数值,该整数值可以用作我要构造的邻接矩阵的索引。
现在我需要一个好的/快速矩阵或二维数组来存储整数。它应该:
- 使用我存储在 Google Sparse Hash 中的整数值作为行/列数。(例如,我想通过执行类似的操作来访问/更改存储的整数
matrix(3,4) = 3
。 - 我不知道我需要提前多少行或列。所以它应该能够即时添加行和列。
- 大多数值将是 0,因此它可能应该是某些东西的稀疏实现。
- 行数和列数会很大,所以应该很快。
- 使用简单。我不需要很多数学运算,它应该只是一种快速简单的存储和访问整数的方法。
我希望我的问题足够清楚。