Java Program to Check if any Graph is Possible to be Constructed for a Given Degree Sequence

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 Find Nearest Neighbor Using Linear Search
Java Program to Check Whether a Directed Graph Contains a Eulerian Path
Java Program to Generate All Possible Combinations Out of a, b, c, d, e
Java Program to Implement Uniform-Cost Search
Hướng dẫn Java Design Pattern – Singleton
How to Use if/else Logic in Java 8 Streams
Java Program to Find Inverse of a Matrix
Hướng dẫn sử dụng Java String, StringBuffer và StringBuilder
Iterating over Enum Values in Java
Java Program to Implement Double Ended Queue
Hướng dẫn sử dụng luồng vào ra ký tự trong Java
Java Program to Generate a Sequence of N Characters for a Given Specific Case
Implementing a Runnable vs Extending a Thread
Java Program to Use Above Below Primitive to Test Whether Two Lines Intersect
Chuyển đổi từ HashMap sang ArrayList
Intro to the Jackson ObjectMapper
Concatenating Strings In Java
Redirect to Different Pages after Login with Spring Security
Java Program to Compute Determinant of a Matrix
Java Program to Implement Control Table
Quản lý bộ nhớ trong Java với Heap Space vs Stack
Quick Guide to Spring MVC with Velocity
Simultaneous Spring WebClient Calls
Quick Intro to Spring Cloud Configuration
Disable DNS caching
Batch Processing with Spring Cloud Data Flow
Spring Cloud Series – The Gateway Pattern
Java – File to Reader
Java Program to Implement ArrayDeque API
The HttpMediaTypeNotAcceptableException in Spring MVC
Sử dụng JDBC API thực thi câu lệnh truy vấn dữ liệu
Giới thiệu về Stream API trong Java 8