Я изучаю способ вычисления матрицы пути из матрицы смежности (скажем, AM1).Вычисление матрицы пути из матрицы смежности
Путь Матрица графа G с п вершинами булева п * п матрица, элементы которой могут быть определены как:
p[i][j]=1(if there is a path from i to j)
p[i][j]=0(otherwise)
И шаги я узнал следующим образом:
Если мы умножим матрицу смежности A [] [], мы получим A^2 (скажем, AM2), каждая вершина A [i] [j] в основном представляет количество путей длины пути 2 от i до j.
Аналогично, если умножить матрицу смежности 3 раза, т. Е. Получим A^3 (скажем, AM3), каждая вершина A [i] [j] в основном представляет количество путей длины пути 3 от i до j. и так далее.
Теперь определим матрицу X, что:
X = AM1 + AM2 + AM3 ... AMN (где п число вершин)
С этой X матрице вычислить матрицу возможностей пути/достижения , заменив все ненулевые вершины на 1.
То, что я не могу понять, заключается в том, как замена всех ненулевых вершин на 1 дает нам матрицу путей. И почему мы вычисляем или добавляем всю матрицу до AMn.?.
Я понимаю, что X [i] [j] символизирует количество путей, длина пути n или меньше n, от i до j, Но почему мы вычисляем только до n, не более или менее?
Пожалуйста, объясните!