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:
Java Program to Compare Binary and Sequential Search
Annotation trong Java 8
Hướng dẫn Java Design Pattern – State
Java Program to Implement RenderingHints API
Spring Boot - Exception Handling
Using Custom Banners in Spring Boot
Java Program to Implement an Algorithm to Find the Global min Cut in a Graph
REST Web service: Upload và Download file với Jersey 2.x
Hướng dẫn Java Design Pattern – Transfer Object
Java Program to Generate Random Numbers Using Middle Square Method
Introduction to Project Reactor Bus
Java Program to Implement HashSet API
Toán tử instanceof trong java
Jackson – Decide What Fields Get Serialized/Deserialized
Phương thức tham chiếu trong Java 8 – Method References
Java Optional as Return Type
Java Program to Implement CopyOnWriteArraySet API
Java Program to Implement Cubic convergence 1/pi Algorithm
Guide to System.gc()
Giới thiệu SOAP UI và thực hiện test Web Service
Java Program to Implement Vector API
Servlet 3 Async Support with Spring MVC and Spring Security
Java Program to Find the Minimum value of Binary Search Tree
Java Program to Find All Pairs Shortest Path
Quick Intro to Spring Cloud Configuration
Java Program to implement Priority Queue
Java Program to Show the Duality Transformation of Line and Point
Java Program to Implement Sparse Matrix
Java Program to Implement Solovay Strassen Primality Test Algorithm
Object Type Casting in Java
Spring – Injecting Collections
Spring Boot - CORS Support