Foro de elhacker.net

Programación => Programación General => Mensaje iniciado por: LADYHONEY en 19 Junio 2021, 01:27 am



Título: ¿Cuál es el algoritmo para saber si un grafo es conexo o no?
Publicado por: LADYHONEY en 19 Junio 2021, 01:27 am
Hola, me gustaría saber cuál es el código a implementar en c# para saber si un grafo es conexo o no, y cómo se coloca el arreglo bidimensional como matriz de adyacencia
¿alguien me ayuda?  :-\ :-\




Título: Re: ¿Cuál es el algoritmo para saber si un grafo es conexo o no?
Publicado por: fzp en 23 Junio 2021, 20:03 pm
En lo que concierne a implementar una matriz de adyacencia de grafo como  arreglo bidimensional tendrías que aclarar un poco que es lo que no consigues hacer.

A mi sólo se me ocurren dos cosas que no sepas cómo hacer:  una: como hacer una matriz de adyacencia de un grafo, y otra como introducir y usar una matriz cualquiera en en un determinado lenguaje; en este caso parece ser c#. Convendría que explicaras que es lo que no te va.

¿Sabes como hacer una matriz de adyacencia de un grafo? Es decir, si te dan la representación gráfica de un grafo con sus nodos y sus líneas ¿sabrías escribir a mano con lápiz y papel su matriz de adyacencia?

Y por otro lado, ¿sabrías como introducir una matriz cualquiera -ya sea de un grafo o de cualquier otra cosa- en el lenguaje deseado?

Es que sabiendo esas dos cosas no veo el problema; así que supongo que alguna de ellas es donde tienes el problema.

Lo del algoritmo para detectar si el grafo es conexo o no ya es harina de otro costal; de todas formas primero deberías empezar por poder implementar una matriz de un grafo dentro de un código fuente en un determinado lenguaje, ya después pensar en el algoritmo de trazado de itinerarios entre nodos para ver si se pueden recorrer todos o no.


Título: Re: ¿Cuál es el algoritmo para saber si un grafo es conexo o no?
Publicado por: Serapis en 24 Junio 2021, 16:41 pm
Un grafo es conexo cuando todos sus nodos son visitables empezando desde uno cualquiera dado. Como algoritmo pueden plantearse varios, que al fin y al cabo simplemente es un recorrido completo.

La matriz de adyacencia, no es más que una tabla, en la que por cada nodo, apunta a cado uno del resto de nodos y el valor es la distancia (el peso) entre ambos nodos. Depende de si el grafo es dirigido o no, etc...

Si te interesa el tema, debería haber un feedback con respuestas, si no, se asume , que preguntas y no revisas respuestas, en resumen que en verdad no te interesa más que te dén hecho el código y por tanto que responderte es perder el tiempo.