This is a java program to represent graph as a adjacency matrix. Nodes are arranged in matrix and at an index of i, j zero is displayed if nodes i and j are not connected, one otherwise.
Here is the source code of the Java Program to Represent Graph Using Adjacency Matrix. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
//This is a java program to represent graph as a adjacency matrix
import java.util.Scanner;
public class Represent_Graph_Adjacency_Matrix
{
private final int vertices;
private int[][] adjacency_matrix;
public Represent_Graph_Adjacency_Matrix(int v)
{
vertices = v;
adjacency_matrix = new int[vertices + 1][vertices + 1];
}
public void makeEdge(int to, int from, int edge)
{
try
{
adjacency_matrix[to][from] = edge;
}
catch (ArrayIndexOutOfBoundsException index)
{
System.out.println("The vertices does not exists");
}
}
public int getEdge(int to, int from)
{
try
{
return adjacency_matrix[to][from];
}
catch (ArrayIndexOutOfBoundsException index)
{
System.out.println("The vertices does not exists");
}
return -1;
}
public static void main(String args[])
{
int v, e, count = 1, to = 0, from = 0;
Scanner sc = new Scanner(System.in);
Represent_Graph_Adjacency_Matrix graph;
try
{
System.out.println("Enter the number of vertices: ");
v = sc.nextInt();
System.out.println("Enter the number of edges: ");
e = sc.nextInt();
graph = new Represent_Graph_Adjacency_Matrix(v);
System.out.println("Enter the edges: <to> <from>");
while (count <= e)
{
to = sc.nextInt();
from = sc.nextInt();
graph.makeEdge(to, from, 1);
count++;
}
System.out.println("The adjacency matrix for the given graph is: ");
System.out.print(" ");
for (int i = 1; i <= v; i++)
System.out.print(i + " ");
System.out.println();
for (int i = 1; i <= v; i++)
{
System.out.print(i + " ");
for (int j = 1; j <= v; j++)
System.out.print(graph.getEdge(i, j) + " ");
System.out.println();
}
}
catch (Exception E)
{
System.out.println("Somthing went wrong");
}
sc.close();
}
}
Output:
$ javac Represent_Graph_Adjacency_Matrix.java $ java Represent_Graph_Adjacency_Matrix Enter the number of vertices: 5 Enter the number of edges: 7 Enter the edges: <to> <from> 1 1 2 3 3 4 4 5 3 5 1 4 2 4 The adjacency matrix for the given graph is: 1 2 3 4 5 1 1 0 0 1 0 2 0 0 1 1 0 3 0 0 0 1 1 4 0 0 0 0 1 5 0 0 0 0 0
Related posts:
Guide to java.util.concurrent.Future
Spring Cloud Series – The Gateway Pattern
A Quick Guide to Spring Cloud Consul
Guide to Guava Table
Java Program to Represent Graph Using Adjacency List
The Guide to RestTemplate
Logging in Spring Boot
Java Program to Implement Sieve Of Sundaram
How to Return 404 with Spring WebFlux
Java Program to implement Bit Set
Java Program to Implement Hash Tables Chaining with Doubly Linked Lists
Java Program to Perform Encoding of a Message Using Matrix Multiplication
Java Program to Implement Hash Tables with Double Hashing
Guide to Character Encoding
Java Program to Apply DFS to Perform the Topological Sorting of a Directed Acyclic Graph
Spring Data JPA @Modifying Annotation
Serialize Only Fields that meet a Custom Criteria with Jackson
Why String is Immutable in Java?
Anonymous Classes in Java
Test a REST API with Java
A Guide to the Java LinkedList
Spring Boot Tutorial – Bootstrap a Simple Application
Inheritance and Composition (Is-a vs Has-a relationship) in Java
Dockerizing a Spring Boot Application
Converting Java Date to OffsetDateTime
Automatic Property Expansion with Spring Boot
How to Iterate Over a Stream With Indices
Introduction to Spring Cloud Stream
Java Program to Implement Binomial Tree
Introduction to the Functional Web Framework in Spring 5
Spring Boot - Creating Docker Image
Vòng lặp for, while, do-while trong Java