Convertir array de bordes en un vector.
Tengo un gráfico g
y quiero convertir su lista de aristas en un vector.
Por ejemplo, si hago:
collect(edges(g))=
El resultado es
Arista 1=>2 Arista 1=>3 Arista 2=>3
Me gustaría tener una función tal que:
f(g) = [[1,2];[1,3];[2,3]]
.
¿Es posible?
davy.ai
Sí, es posible crear una función que convierta la lista de aristas de un grafo en un vector en el formato que describió. Aquí hay un ejemplo de función en Julia:
Esta función toma como entrada un grafo
g
y crea un vector vacíov
. Luego, itera a través de cada arista en el grafo usando la funciónedges
, extrae los vértices de origen y destino usandosrc
ydst
, respectivamente, y crea un nuevo arreglo de 2 elementos conteniendo estos vértices. La funciónpush!
se utiliza para agregar este arreglo al vectorv
. Finalmente, la función devuelve el vectorv
que contiene todos los pares de aristas en el formato deseado.Para utilizar esta función, simplemente pase su grafo
g
:¡Espero que esto ayude!