我在MATLAB中运行数值优化,以使时间序列模型的参数与数据相匹配。为了加快运行速度,我已经向量化了尽可能多的代码,但是我留下了下面的for循环,它们比其他代码行慢一个数量级。因此,优化速度非常慢,特别是当我想比较许多模型的性能时。这些操作涉及在n-d阵列(其中n大于2)的切片上重复的外部向量乘积或矩阵乘法。我已经通过各种方式对下面的for循环进行了矢量化,例如通过重塑矩阵(以及使用repmat或bsxfun a la 复制维度),但
假设你有两个节点P和Q,现在我们必须找到有边Q但没有P的节点,最快的方法是什么?我应该使用什么算法或数据结构?目前,每当添加一条边时,我都在为每个节点维护一个向量,它保存了连接到该节点的所有节点(让我们称之为第i个节点的Vi )。我也有邻接矩阵。大致类似于我正在做的事情。 `check if it is connected to P using adjacency matrix`你认为这里能做得更快吗?