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:
Truyền giá trị và tham chiếu trong java
Spring Security Logout
ETL with Spring Cloud Data Flow
Handling URL Encoded Form Data in Spring REST
Upload and Display Excel Files with Spring MVC
Immutable Objects in Java
Lớp Properties trong java
Java Program to Represent Graph Using Linked List
Java Program to Implement Shunting Yard Algorithm
Java Program to Compute the Area of a Triangle Using Determinants
Apache Commons Collections BidiMap
Hướng dẫn sử dụng Lớp FilePermission trong java
Java Program to Implement Unrolled Linked List
MyBatis with Spring
Java Program to Perform String Matching Using String Library
Java Program to Find ith Largest Number from a Given List Using Order-Statistic Algorithm
Java Program to Generate All Subsets of a Given Set in the Lexico Graphic Order
Java Program to Implement Brent Cycle Algorithm
Join and Split Arrays and Collections in Java
Guide to java.util.concurrent.BlockingQueue
Guide to java.util.Formatter
Java Program to Implement the Bin Packing Algorithm
How to use the Spring FactoryBean?
Guide to Guava Multimap
Guide to Java 8 groupingBy Collector
Spring Security and OpenID Connect
Spring Cloud Bus
Vấn đề Nhà sản xuất (Producer) – Người tiêu dùng (Consumer) và đồng bộ hóa các luồng trong Java
JWT – Token-based Authentication trong Jersey 2.x
Java Program to Implement Traveling Salesman Problem using Nearest neighbour Algorithm
Lập trình đa luồng với Callable và Future trong Java
Collect a Java Stream to an Immutable Collection