This Java program,finds the transpose of graph matrix.In the mathematical and algorithmic study of graph theory, the converse,[1] transpose[2] or reverse[3] of a directed graph G is another directed graph on the same set of vertices with all of the edges reversed compared to the orientation of the corresponding edges in G. That is, if G contains an edge (u,v) then the converse/transpose/reverse of G contains an edge (v,u) and vice versa.
Here is the source code of the Java program to find the transpose of graph matrix. The Java program is successfully compiled and run on a Linux system. The program output is also shown below.
import java.util.Scanner;
public class TransposeOfGraph
{
private int transposeMatrix[][];
private int numberOfVertices;
public TransposeOfGraph(int numberOfVertices)
{
this.numberOfVertices = numberOfVertices;
transposeMatrix = new int[numberOfVertices + 1][numberOfVertices + 1];
}
public int[][] transpose(int adjacencyMatrix[][])
{
for (int source = 1; source <= numberOfVertices; source++)
{
for (int destination = 1; destination <= numberOfVertices; destination++)
{
transposeMatrix[destination] = adjacencyMatrix[destination];
}
}
return transposeMatrix;
}
public static void main(String... arg)
{
int number_of_nodes;
Scanner scanner = null;
System.out.println("Enter the number of nodes in the graph");
scanner = new Scanner(System.in);
number_of_nodes = scanner.nextInt();
int adjacency_matrix[][] = new int[number_of_nodes + 1][number_of_nodes + 1];
int transpose_matrix[][];
System.out.println("Enter the adjacency matrix");
for (int i = 1; i <= number_of_nodes; i++)
for (int j = 1; j <= number_of_nodes; j++)
adjacency_matrix[i][j] = scanner.nextInt();
TransposeOfGraph transposeOfGraph = new TransposeOfGraph(number_of_nodes);
transpose_matrix = transposeOfGraph.transpose(adjacency_matrix);
System.out.println("The transpose of the given graph");
for (int i = 1; i <= number_of_nodes; i++)
System.out.print("\t" + i);
System.out.println();
for (int source = 1; source <= number_of_nodes; source++)
{
System.out.print(source +"\t");
for (int destination = 1; destination <= number_of_nodes; destination++)
{
System.out.print(transpose_matrix[destination] + "\t");
}
System.out.println();
}
scanner.close();
}
}
$javac TransposeOfGraph.java $java TransposeOfGraph Enter the number of nodes in the graph 4 Enter the adjacency matrix 0 0 3 0 2 0 0 0 0 7 0 1 6 0 0 0 The transpose of the given graph 1 2 3 4 1 0 2 0 6 2 0 0 7 0 3 3 0 0 0 4 0 0 1 0
Related posts:
New Features in Java 15
Từ khóa this và super trong Java
Guide to the Synchronized Keyword in Java
Guide to Selenium with JUnit / TestNG
Most commonly used String methods in Java
Guide to CopyOnWriteArrayList
Spring’s RequestBody and ResponseBody Annotations
A Guide to Apache Commons Collections CollectionUtils
Luồng Daemon (Daemon Thread) trong Java
Period and Duration in Java
Java Program to Generate All Subsets of a Given Set in the Gray Code Order
Working with Network Interfaces in Java
How to Store Duplicate Keys in a Map in Java?
Java Program to Check Whether Graph is DAG
Serialization và Deserialization trong java
Converting Between Byte Arrays and Hexadecimal Strings in Java
Guide To CompletableFuture
Derived Query Methods in Spring Data JPA Repositories
The Difference Between Collection.stream().forEach() and Collection.forEach()
Spring MVC Content Negotiation
Java Program to Implement Sparse Array
Spring Boot - Application Properties
Java Program to Implement Circular Doubly Linked List
Spring – Injecting Collections
Introduction to Eclipse Collections
Connect through a Proxy
Introduction to Spring Cloud Netflix – Eureka
Giới thiệu Google Guice – Dependency injection (DI) framework
Interface trong Java 8 – Default method và Static method
Test a REST API with Java
A Guide to TreeMap in Java
Java Program to Implement Disjoint Set Data Structure