Например, у меня есть такая матрица;
1 2 3 4
2 4 5 1
1 2 4 1
5 3 2 1
и я выбираю 3 узла из этой матрицы как случайные. Как я могу сделать график из этих узлов? Есть ли какой-нибудь алгоритм или способ сделать это? Я знаю, как сделать матрицу смежности из графа, но я просто не могу сделать граф из случайной матрицы прямо сейчас.
РЕДАКТИРОВАТЬ:
Например, я выбираю строку: 1 столбец: 1 в качестве первого узла и строку: 3 столбца: 1 в качестве второго узла, он должен найти кратчайший путь между первым узлом и вторым узлом и составить их график.
Я предполагаю, что эта матрица 4×4 представляет матрицу смежности из графа с 4 узлами. В этом случае выбор случайным образом 3 узлов означал бы выбор 3 случайных линий и использование соответствующих столбцов, и у вас есть уменьшенный граф, определенный его списком смежности.
РЕДАКТИРОВАТЬ:
Согласно вашему редактированию, каждый из 16 элементов матрицы будет узлом, уникально идентифицированным по его координатам (i, j). Каждый из этих узлов будет связан по крайней мере со своими 2-4 соседями. Затем необходимы некоторые уточнения:
Затем вы можете легко построить матрицу 16 * 16 для 16 предметов и применить метод кратчайшего пути.
Других решений пока нет …