我在幂迭代算法中使用了稀疏矩阵的耶鲁表示,一切顺利且快速。
但是,现在我遇到了一个问题,我的教授将在数据文件中无序发送稀疏矩阵,并且由于矩阵是对称的,因此只有一对索引存在。
问题是,在我的实现中,我需要按顺序插入元素。
我尝试阅读一些东西,然后插入我的稀疏矩阵:
1)使用密集矩阵。
2) 使用另一个稀疏矩阵实现,我尝试使用 std::map。
3)优先队列,我做了一个priority_queues数组。我在priority_queue[i]中插入元素i,j,所以当我弹出priority_queue[i]时,我取第i行的最低j-index。
但我需要一些真正快速且内存效率高的东西,因为我将使用的最大矩阵将是 100k x 100k,而且我所做的尝试非常慢,几乎比幂迭代本身慢 200 倍。
有什么建议么?对不起英语不好:(