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 Sieve Of Eratosthenes
Java Program to Implement Hash Tables Chaining with Binary Trees
Java Program to implement Bi Directional Map
Java Program to Implement Jarvis Algorithm
Java Program to Find Transitive Closure of a Graph
HttpAsyncClient Tutorial
Java Program to Implement Bubble Sort
Java – Reader to InputStream
How to Get All Dates Between Two Dates?
Java Switch Statement
Java Program to Find Location of a Point Placed in Three Dimensions Using K-D Trees
Lớp TreeMap trong Java
Java Program to Perform the Shaker Sort
Spring Boot - Tomcat Port Number
Jackson Ignore Properties on Marshalling
REST Web service: Basic Authentication trong Jersey 2.x
Các nguyên lý thiết kế hướng đối tượng – SOLID
Remove All Occurrences of a Specific Value from a List
Java Program to Implement Hash Tables with Double Hashing
Java Program to Implement SimpeBindings API
Java Program to Implement Binary Search Tree
Java Program to Implement Multi-Threaded Version of Binary Search Tree
Weak References in Java
Java Program to Implement RenderingHints API
@Lookup Annotation in Spring
Hướng dẫn Java Design Pattern – Interpreter
Converting String to Stream of chars
Cơ chế Upcasting và Downcasting trong java
Assert an Exception is Thrown in JUnit 4 and 5
Spring MVC Content Negotiation
Getting Started with Stream Processing with Spring Cloud Data Flow
Mockito and JUnit 5 – Using ExtendWith