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:
Java Program to Implement vector
Java – Convert File to InputStream
Display Auto-Configuration Report in Spring Boot
Java Program to Implement Find all Cross Edges in a Graph
Hướng dẫn Java Design Pattern – Visitor
Java Optional as Return Type
Từ khóa static và final trong java
HashSet trong java
Giới thiệu thư viện Apache Commons Chain
Feign – Tạo ứng dụng Java RESTful Client
How to Read a File in Java
Updating your Password
Tiêu chuẩn coding trong Java (Coding Standards)
Spring’s RequestBody and ResponseBody Annotations
An Intro to Spring Cloud Contract
Multi Dimensional ArrayList in Java
Spring Boot - Eureka Server
Giới thiệu SOAP UI và thực hiện test Web Service
ETags for REST with Spring
Immutable ArrayList in Java
Java Program to Describe the Representation of Graph using Adjacency Matrix
A Guide to Queries in Spring Data MongoDB
Composition, Aggregation, and Association in Java
Basic Authentication with the RestTemplate
Apache Commons Collections BidiMap
Netflix Archaius with Various Database Configurations
Spring Boot - Google Cloud Platform
Guide to CopyOnWriteArrayList
HttpClient 4 – Follow Redirects for POST
Java Program to Compare Binary and Sequential Search
Làm thế nào tạo instance của một class mà không gọi từ khóa new?
Java Program to do a Depth First Search/Traversal on a graph non-recursively