This Java program,to describe the representation of graph using incident list. Vertices and edges are stored as records or objects. Each vertex stores its incident edges, and each edge stores its incident vertices. This data structure allows the storage of additional data on vertices and edges.
Here is the source code of the Java program to describe the representation of graph using incident list. The Java program is successfully compiled and run on a Linux system. The program output is also shown below.
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Scanner;
public class IncidentList
{
private Map<Integer, List<Integer>> incidentList;
private int numberOfVertices;
public IncidentList(int numberOfVertices)
{
this.numberOfVertices = numberOfVertices;
incidentList = new HashMap<Integer, List<Integer>>();
for (int vertex = 1; vertex <= numberOfVertices; vertex++)
incidentList.put(vertex, new LinkedList<Integer>());
}
public void setEdge(int sourcevertex, int destinationvertex, int edgeNumber)
{
List<Integer> slist = incidentList.get(sourcevertex);
slist.add(edgeNumber);
return;
}
public List<Integer> getEdge(int vertex)
{
return incidentList.get(vertex);
}
public void printIncidentList()
{
System.out.println("Vertex EdgeNumber");
for (int vertex = 1; vertex <= numberOfVertices; vertex++)
{
System.out.print(vertex + ":");
List<Integer> edgeList = getEdge(vertex);
for (int j = 1; ; j++)
{
if (j != edgeList.size())
System.out.print(edgeList.get(j - 1) + "\t");
else
{
System.out.print(edgeList.get(j - 1));
break;
}
}
System.out.println();
}
}
public static void main(String... arg)
{
int numberOfVertices, numberOfEdges;
int source, destination, edgeNumber;
int edgeCount = 1;
Scanner scanner = new Scanner(System.in);
System.out.println("Enter the number of vertices");
numberOfVertices = scanner.nextInt();
IncidentList incidentList = new IncidentList(numberOfVertices);
System.out.println("Enter the number of edges");
numberOfEdges = scanner.nextInt();
System.out.println("Enter the edges format : <edgeNumber> <source> <destination>");
while (edgeCount <= numberOfEdges)
{
edgeNumber = scanner.nextInt();
source = scanner.nextInt();
destination = scanner.nextInt();
incidentList.setEdge(source, destination, edgeNumber);
edgeCount++;
}
System.out.println("\nThe Incident List is ");
incidentList.printIncidentList();
scanner.close();
}
}
$javac IterativeDeepening.java $java IterativeDeepening Enter the number of vertices 5 Enter the number of edges 5 Enter the edges format : <edgeNumber> <source> <destination> 1 1 2 2 2 4 3 5 4 4 4 3 5 5 1 The Incident List is Vertex EdgeNumber 1 : 1 5 2 : 1 2 3 : 4 4 : 2 3 4 5 : 3 5
Related posts:
Explain about URL and HTTPS protocol
Truyền giá trị và tham chiếu trong java
LIKE Queries in Spring JPA Repositories
Java Program to Implement Control Table
Introduction to the Functional Web Framework in Spring 5
Java Program to Check whether Undirected Graph is Connected using BFS
Java Program to Represent Graph Using Linked List
Handling URL Encoded Form Data in Spring REST
Java Program to Implement a Binary Search Algorithm for a Specific Search Sequence
Hướng dẫn sử dụng luồng vào ra ký tự trong Java
Java Program to Perform Searching Using Self-Organizing Lists
Giới thiệu Google Guice – Aspect Oriented Programming (AOP)
Java Program to Implement Word Wrap Problem
Creating a Custom Starter with Spring Boot
Quick Guide on Loading Initial Data with Spring Boot
Spring Boot - Tomcat Port Number
Giới thiệu Swagger – Công cụ document cho RESTfull APIs
Java Program to find the maximum subarray sum O(n^2) time(naive method)
Spring Security – Reset Your Password
Lớp lồng nhau trong java (Java inner class)
Java Program to Solve the 0-1 Knapsack Problem
Java Program to Solve TSP Using Minimum Spanning Trees
Disable Spring Data Auto Configuration
Guide to Spring Cloud Kubernetes
Spring Cloud – Tracing Services with Zipkin
Generic Constructors in Java
Java Program to Implement Vector API
Java Program to Implement Counting Sort
Spring Security Custom AuthenticationFailureHandler
Using the Not Operator in If Conditions in Java
A Guide to the Java LinkedList
Giới thiệu Aspect Oriented Programming (AOP)