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:
Tạo số và chuỗi ngẫu nhiên trong Java
Java Program to Implement Hopcroft Algorithm
Configure a RestTemplate with RestTemplateBuilder
Hamcrest Collections Cookbook
Java Program to Represent Linear Equations in Matrix Form
Giới thiệu java.io.tmpdir
Spring Boot - Building RESTful Web Services
Tính đa hình (Polymorphism) trong Java
Spring Boot - Introduction
The “final” Keyword in Java
OAuth 2.0 Resource Server With Spring Security 5
Introduction to Using Thymeleaf in Spring
Performance Difference Between save() and saveAll() in Spring Data
Comparing Strings in Java
A Guide to the Java ExecutorService
Sending Emails with Java
Java Program to Perform Finite State Automaton based Search
Java Program to Test Using DFS Whether a Directed Graph is Strongly Connected or Not
Quick Guide on Loading Initial Data with Spring Boot
The Registration Process With Spring Security
Hướng dẫn Java Design Pattern – Flyweight
Java Program to Represent Graph Using Incidence List
Toán tử trong java
Hướng dẫn Java Design Pattern – Builder
Spring Autowiring of Generic Types
Serve Static Resources with Spring
Most commonly used String methods in Java
Configure a Spring Boot Web Application
The SpringJUnitConfig and SpringJUnitWebConfig Annotations in Spring 5
Java Program to Implement Johnson’s Algorithm
A Guide to WatchService in Java NIO2
Convert XML to JSON Using Jackson