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:
Spring Boot - Actuator
Java Program to Implement Meldable Heap
Tạo ứng dụng Java RESTful Client với thư viện Retrofit
Practical Java Examples of the Big O Notation
Ways to Iterate Over a List in Java
Hướng dẫn Java Design Pattern – Object Pool
LinkedList trong java
Check if a String is a Palindrome in Java
Convert Character Array to String in Java
Java Program to Implement the Program Used in grep/egrep/fgrep
Spring Security and OpenID Connect
Java Program to Implement Slicker Algorithm that avoids Triangulation to Find Area of a Polygon
Java Program to Sort an Array of 10 Elements Using Heap Sort Algorithm
Migrating from JUnit 4 to JUnit 5
Comparing Strings in Java
Java Program to Perform Insertion in a BST
Java Perform to a 2D FFT Inplace Given a Complex 2D Array
Java Program to Implement Cartesian Tree
Java Program to Implement the Monoalphabetic Cypher
Java Program to Generate All Pairs of Subsets Whose Union Make the Set
Java Program to Implement VList
Spring REST API + OAuth2 + Angular (using the Spring Security OAuth legacy stack)
What is Thread-Safety and How to Achieve it?
Hướng dẫn sử dụng lớp Console trong java
Spring Cloud – Securing Services
Java Optional as Return Type
HttpClient Basic Authentication
Thực thi nhiều tác vụ cùng lúc như thế nào trong Java?
Different Ways to Capture Java Heap Dumps
Java Program to Implement Traveling Salesman Problem using Nearest neighbour Algorithm
Java 8 Predicate Chain
TreeSet và sử dụng Comparable, Comparator trong java