Я хотел бы сгенерировать матрицу смежности неориентированного графа с N узлами. В частности, этот граф должен иметь фиксированную степень (каждый узел подключен к фиксированному числу узла d).matlab генерировать фиксированный градус неориентированный граф
Если множество D = N-1, то решение тривиально:
A = ones(N) - eye(N);
Как можно обобщить для любого г?
ADD:
Вот решение (спасибо Оли Charlesworth):
function A = fixedDegreeGraph(N, d)
A = zeros(N);
for i=1:N
b = i;
f = i;
for k=1:floor(d/2)
f = f + 1;
if (f == N + 1)
f = 1;
end
A(i, f) = 1;
A(f, i) = 1;
b = b - 1;
if (b == 0)
b = N;
end
A(i, b) = 1;
A(b, i) = 1;
end
end
Благодарим Вас за отзыв! Я написал решение без использования toeplitz (см. Мой оригинальный пост). Как я могу использовать toeplitz? –