Un grafo no dirigido es grafo , es decir, un conjunto de objetos (llamados vértices o Nodes) que están conectados entre sí, donde todas las aristas son bidireccionales. Un grafo no dirigido a veces se denomina red no dirigida. En contraste, un gráfico donde los bordes apuntan en una dirección se llama gráfico dirigido.
Ejemplos:
Input: Enter the number of Edges : 5 Output: The Generated Random Graph is : 1 -> { 5 2 } 2 -> { 1 } 3 -> { Isolated Vertex! } 4 -> { 6 } 5 -> { 1 } 6 -> { 4 10 } 7 -> { Isolated Vertex! } 8 -> { 10 } 9 -> { Isolated Vertex! } 10 -> { 8 6 } Input: Enter the number of Edges : 10 Output: The Generated Random Graph is : 1 -> { 4 9 } 2 -> { 8 } 3 -> { 8 } 4 -> { 1 6 } 5 -> { 6 } 6 -> { 10 5 8 9 4 } 7 -> { 8 } 8 -> { 7 3 6 2 } 9 -> { 1 6 } 10 -> { 6 }
Acercarse:
- Tome la entrada del número de aristas para el gráfico acíclico dirigido aleatorio.
- Construya una conexión entre dos vértices aleatorios iterativamente.
- Afirmar «Vértice aislado» si el grado de un cierto vértice es cero.
Implementación:
Java
// Java program to Generate a Random Undirected Graph // for a GivenNumber of Edges // importing generic packages import java.util.*; import java.util.Random; public class RandomUG { static int maxVertex = 10; // Function to generate random graph public static void generateRandomGraphs(int e) { int i = 0, j = 0, count = 0; int[][] edge = new int[e][2]; Random rand = new Random(); // Build a connection between two random vertex while (i < e) { edge[i][0] = rand.nextInt(maxVertex) + 1; edge[i][1] = rand.nextInt(maxVertex) + 1; // using rand to pick a random integer in range // of (1 - maxVertex) i++; } System.out.println( "The Generated Random Graph is :"); // Print the Graph for (i = 0; i < maxVertex; i++) { count = 0; System.out.print((i + 1) + " -> { "); for (j = 0; j < e; j++) { if (edge[j][0] == i + 1) { System.out.print(edge[j][1] + " "); count++; } else if (edge[j][1] == i + 1) { System.out.print(edge[j][0] + " "); count++; } // print “Isolated vertex” for the vertex // having zero degree. else if (j == e - 1 && count == 0) System.out.print("Isolated Vertex!"); } System.out.print(" }\n"); } } public static void main(String args[]) throws Exception { int e = 6; System.out.println("Enter the number of Edges : " +e); // Function to generate a Random unDirected Graph generateRandomGraphs(e); } }
Producción
Enter the number of Edges : 6 The Generated Random Graph is : 1 -> { 8 } 2 -> { 2 } 3 -> { Isolated Vertex! } 4 -> { 5 } 5 -> { 4 6 } 6 -> { 5 } 7 -> { 9 } 8 -> { 1 10 } 9 -> { 7 } 10 -> { 8 }
Publicación traducida automáticamente
Artículo escrito por yasserarafat y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA