Java program to describe the representation of graph using adjacency matrix.In mathematics and computer science, an adjacency matrix is a means of representing which vertices (or nodes) of a graph are adjacent to which other vertices. Another matrix representation for a graph is the incidence matrix.
Here is source code of the Java program to find the adjacency matrix of a given graph .The Java program is successfully compiled and run on a Linux system. The program output is also shown below.
import java.util.InputMismatchException; import java.util.Scanner; public class GraphAdjacencyMatrix { private final int MAX_NO_OF_VERTICES; private int adjacency_matrix[][]; public GraphAdjacencyMatrix(int number_of_vertices) { MAX_NO_OF_VERTICES = number_of_vertices; adjacency_matrix = new int[MAX_NO_OF_VERTICES + 1][MAX_NO_OF_VERTICES + 1]; } public void setEdge(int from_vertex, int to_vertex, int edge) { try { adjacency_matrix[from_vertex][to_vertex] = edge; } catch (ArrayIndexOutOfBoundsException indexBounce) { System.out.println("the vertex entered is not present"); } } public int getEdge(int from_vertex, int to_vertex) { try { return adjacency_matrix[from_vertex][to_vertex]; } catch (ArrayIndexOutOfBoundsException indexBounce) { System.out.println("the vertex entered is not present") } return -1; } public static void main(String... arg) { int number_of_vertices, count = 1; int source = 0, destination = 0; Scanner scan = new Scanner(System.in); GraphAdjacencyMatrix adjacencyMatrix; try { System.out.println("Enter the Number of Vertices"); number_of_vertices = scan.nextInt(); System.out.println("Enter the Number of Edges"); int number_of_edges = scan.nextInt(); adjacencyMatrix = new GraphAdjacencyMatrix(number_of_vertices); System.out.println("Enter The Graph Egdes :<source> <destination>"); while (count <= number_of_edges) { source = scan.nextInt(); destination = scan.nextInt(); adjacencyMatrix.setEdge(source, destination, 1); count++; } System.out.println("The adjacency matrix for given graph is"); for (int i = 1; i <= number_of_vertices; i++) System.out.print(i); System.out.println(); for (int i = 1; i <= number_of_vertices; i++) { System.out.print(i); for (int j = 1; j <= number_of_vertices; j++) { System.out.print(adjacencyMatrix.getEdge(i, j)); } System.out.println(); } } catch (InputMismatchException inputMisMatch) { System.out.println("Error in Input Format.<source index> <destination index>"); } scan.close(); } }
$javac GraphAdjacencyMatrix.java $java GraphAdjacencyMatrix Enter the Number of Vertices and Edges 4 5 Enter The Graph Egdes Format : <source index> <destination index> 1 2 2 3 3 4 4 1 1 3 The adjacency matrix for given graph is 1 2 3 4 1 0 1 1 0 2 0 0 1 0 3 0 0 0 1 4 1 0 0 0
Related posts:
Java Program to Implement Min Heap
Java Program to Find Number of Spanning Trees in a Complete Bipartite Graph
Java Program to Implement Queue
Integer Constant Pool trong Java
Java Program to Perform LU Decomposition of any Matrix
Java Program to Apply Above-Below-on Test to Find the Position of a Point with respect to a Line
Spring Boot - Exception Handling
Spring REST API + OAuth2 + Angular (using the Spring Security OAuth legacy stack)
Jackson – JsonMappingException (No serializer found for class)
Java Program to Find ith Largest Number from a Given List Using Order-Statistic Algorithm
Mapping Nested Values with Jackson
Chương trình Java đầu tiên
Guide to Spring @Autowired
HttpClient with SSL
Hướng dẫn Java Design Pattern – Flyweight
Java Program to Generate Date Between Given Range
So sánh HashMap và HashSet trong Java
Spring Boot - Web Socket
Sort a HashMap in Java
Java Program to Implement Word Wrap Problem
Từ khóa this và super trong Java
Most commonly used String methods in Java
Giới thiệu luồng vào ra (I/O) trong Java
Java Program to Implement Vector API
Ignore Null Fields with Jackson
Guide to java.util.concurrent.Future
Java Program to Implement RenderingHints API
Java Program to Implement Knight’s Tour Problem
Java Program to Check if it is a Sparse Matrix
Hướng dẫn Java Design Pattern – Abstract Factory
OAuth2.0 and Dynamic Client Registration
Spring Boot - CORS Support