This Java program, represents a given graph in the incident matrix form.
Here is the source code of the Java program to represent the graph in incident matrix. The Java program is successfully compiled and run on a Linux system. The program output is also shown below.
import java.util.InputMismatchException; import java.util.Scanner; public class GraphIncidenceMatrix { private final int MAX_ROWS ; private final int MAX_COLUMS; private int Incidence_Matrix[][]; public GraphIncidenceMatrix(int number_of_vertices, int number_of_edges) { MAX_COLUMS = number_of_edges; MAX_ROWS = number_of_vertices; Incidence_Matrix = new int[MAX_ROWS + 1][MAX_COLUMS + 1]; } public void setVertices(int from_vertex, int to_vertex, int edge, int edge_num) { try { Incidence_Matrix[from_vertex][edge_num] = edge; Incidence_Matrix[to_vertex][edge_num] = edge; }catch(ArrayIndexOutOfBoundsException indexBounce) { System.out.println("the vertex entered is not present"); } } public int getVertices(int edge_num, int vertex) { try { return Incidence_Matrix[vertex][edge_num]; }catch(ArrayIndexOutOfBoundsException indexBounce) { System.out.println("the vertex entered is not present"); } return -1; } public static void main(String...arg) { int number_of_vertices; int number_of_edges; int edge_count = 1; int edge_number ; int source; int destination; GraphIncidenceMatrix incedenceMatrix = null; Scanner scan = new Scanner(System.in); try { System.out.println("Enter The Number Of Vertices and Edges \n"); number_of_vertices = scan.nextInt(); number_of_edges = scan.nextInt(); incedenceMatrix = new GraphIncidenceMatrix(number_of_vertices, number_of_edges); System.out.println("Enter the Egdes Format :<edge-number> <source index> <destination index> \n"); while (edge_count <= number_of_edges) { edge_number = scan.nextInt(); source = scan.nextInt(); destination = scan.nextInt(); edge_count++; incedenceMatrix.setVertices(source, destination, 1, edge_number); } System.out.println("The Incendence Matrix for the given graph is "); for (int i = 1; i <= number_of_edges; i++) { System.out.print("\t" + i); } System.out.println(); for (int i = 1; i <= number_of_vertices; i++) { System.out.print(i + "\t"); for (int j = 1; j<= number_of_edges; j++) { System.out.print(incedenceMatrix.getVertices(j, i) + "\t"); } System.out.println(); } }catch(InputMismatchException inputMismatch) { System.out.println("the vertex entered is not present"); } scan.close(); } }
$javac GraphIncidenceMatrix.java $java GrapIncidenceMatrix Enter The Number Of Vertices and Edges 4 5 Enter the Egdes Format :<edge-number> <source index> <destination index> 1 1 2 2 2 3 3 3 4 4 4 1 5 1 3 The Incendence Matrix for the given graph is 1 2 3 4 5 1 1 0 0 1 1 2 1 1 0 0 0 3 0 1 1 0 1 4 0 0 1 1 0
Related posts:
What is Thread-Safety and How to Achieve it?
Spring Boot - Runners
Java Program to Check Cycle in a Graph using Graph traversal
Tạo ứng dụng Java RESTful Client không sử dụng 3rd party libraries
Lớp Collectors trong Java 8
Rest Web service: Filter và Interceptor với Jersey 2.x (P1)
Checking for Empty or Blank Strings in Java
Java Program to Represent Graph Using Adjacency Matrix
How to Get a Name of a Method Being Executed?
Java – Write a Reader to File
Java Program to Implement Sparse Array
Java Program to Represent Linear Equations in Matrix Form
Java Program to Implement SynchronosQueue API
Creating a Generic Array in Java
New Features in Java 14
Giới thiệu Google Guice – Injection, Scope
Java – Rename or Move a File
Java Program to Check Whether a Directed Graph Contains a Eulerian Path
Apache Commons Collections MapUtils
Integer Constant Pool trong Java
Java 8 and Infinite Streams
Spring Data Java 8 Support
Java Program to Find Nearest Neighbor for Static Data Set
Java Program to Implement AttributeList API
An Intro to Spring Cloud Task
Java Program to Implement Disjoint Sets
Working with Network Interfaces in Java
Java Program to Implement the Edmond’s Algorithm for Maximum Cardinality Matching
Inheritance and Composition (Is-a vs Has-a relationship) in Java
Java IO vs NIO
LinkedHashSet trong java
Apache Camel with Spring Boot