This is a java program to check graph construction is possible or not using given degree sequence. If the sum of degree is even graph construction is possible, not otherwise.
Here is the source code of the Java Program to Check if any Graph is Possible to be Constructed for a Given Degree Sequence. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
package com.sanfoundry.combinatorial;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class CheckGraphConstuction
{
public static Integer sum(List<Integer> list)
{
Integer sum = 0;
for (Integer integer : list)
{
sum += integer;
}
return sum;
}
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
System.out.println("Enter the number of vertices: ");
Integer n = sc.nextInt();
System.out
.println("Enter the Degree Sequence: <Degree sequence is always in non-increasing order>");
List<Integer> sequence = new ArrayList<Integer>();
while (n > 0)
{
sequence.add(sc.nextInt());
n--;
}
System.out.println(sequence.toString());
if (sum(sequence) % 2 == 0)
{
System.out
.println("Graph can be constructed using the given sequence G=("
+ sequence.size()
+ ", "
+ (sum(sequence) / 2)
+ ").");
}
sc.close();
}
}
Output:
$ javac CheckGraphConstuction.java $ java CheckGraphConstuction Enter the number of vertices: 7 Enter the Degree Sequence: <Degree sequence is always in non-increasing order> 5 3 3 2 2 1 0 [5, 3, 3, 2, 2, 1, 0] Graph can be constructed using the given sequence G=(7, 8). Enter the number of vertices: 3 Enter the Degree Sequence: <Degree sequence is always in non-increasing order> 3 3 1 [3, 3, 1] no soultion exists.
Related posts:
Java Program to Implement the Edmond’s Algorithm for Maximum Cardinality Matching
Java Collections Interview Questions
Using Spring @ResponseStatus to Set HTTP Status Code
Java Program to Solve Set Cover Problem assuming at max 2 Elements in a Subset
Java Program to Find the Peak Element of an Array O(n) time (Naive Method)
Java Program to Implement Wagner and Fisher Algorithm for online String Matching
Working With Maps Using Streams
Java Program to Implement Strassen Algorithm
Các nguyên lý thiết kế hướng đối tượng – SOLID
Creating Docker Images with Spring Boot
HttpClient with SSL
Reactive Flow with MongoDB, Kotlin, and Spring WebFlux
Lớp Properties trong java
Logout in an OAuth Secured Application
Java Program to Implement DelayQueue API
Java Program to Implement Interval Tree
Quick Guide to the Java StringTokenizer
Biến trong java
Overview of Spring Boot Dev Tools
Custom Thread Pools In Java 8 Parallel Streams
The Basics of Java Security
Hướng dẫn sử dụng luồng vào ra ký tự trong Java
So sánh Array và ArrayList trong Java
Database Migrations with Flyway
Spring Webflux and CORS
How to Get a Name of a Method Being Executed?
Hướng dẫn Java Design Pattern – Composite
Java Program to Find the Median of two Sorted Arrays using Binary Search Approach
How to Change the Default Port in Spring Boot
Java Program to Generate Randomized Sequence of Given Range of Numbers
Understanding Memory Leaks in Java
Guide to DelayQueue