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 Find the Shortest Path from Source Vertex to All Other Vertices in Linear Time
Java Program to Implement Heap’s Algorithm for Permutation of N Numbers
Spring Boot - Hystrix
Spring Data MongoDB Transactions
Java Program to Implement Nth Root Algorithm
Java Program to Implement Karatsuba Multiplication Algorithm
New Features in Java 12
LIKE Queries in Spring JPA Repositories
Java Program to Find the Connected Components of an UnDirected Graph
File Upload with Spring MVC
Lập trình hướng đối tượng (OOPs) trong java
Tránh lỗi NullPointerException trong Java như thế nào?
Summing Numbers with Java Streams
Java Program to Implement SimpeBindings API
Java – InputStream to Reader
Java Program to Implement Dijkstra’s Algorithm using Priority Queue
Functional Interfaces in Java 8
Java Program to Find kth Largest Element in a Sequence
Encode/Decode to/from Base64
HttpClient Timeout
Guide to java.util.Formatter
Java Program to Implement Binary Tree
Java Program to Generate N Number of Passwords of Length M Each
Converting Strings to Enums in Java
Multi Dimensional ArrayList in Java
Using the Not Operator in If Conditions in Java
Uploading MultipartFile with Spring RestTemplate
Java Program to Apply DFS to Perform the Topological Sorting of a Directed Acyclic Graph
Java Program to Perform Addition Operation Using Bitwise Operators
Giới thiệu Google Guice – Binding
Java Program to Implement Splay Tree
Java Program to Implement Shell Sort