This Java program Implements Maximum Length Chain Of Pairs.Given n pairs of numbers. In every pair, the first number is always smaller than the second number. A pair (c, d) can follow another pair (a, b) if b < c. Chain of pairs can be formed in this fashion. Find the longest chain which can be formed from a given set of pairs. Here is the source code of the Java Program to Implement Maximum Length Chain Of Pairs.The Java program is successfully compiled and run on a Linux system. The program output is also shown below.
public class MaxLengthChainOfPairs
{
public int maxChainLength(PairVal pair_arr[], int n)
{
int i, j, max = 0;
int MaxChainLen[] = new int[n];
for (i = 0; i < n; i++)
{
MaxChainLen[i] = 1;
}
for (i = 0; i < n; i++)
{
for (j = 0; j < i; j++)
{
if (pair_arr[i].a > pair_arr[j].b && MaxChainLen[i] < MaxChainLen[j] + 1)
MaxChainLen[i] = MaxChainLen[j] + 1;
}
}
for (i = 0; i < n; i++)
{
if (max < MaxChainLen[i])
max = MaxChainLen[i];
}
return max;
}
public static void main(String... arg)
{
PairVal pair_arr[] = new PairVal[4];
pair_arr[0] = new PairVal(5, 24);
pair_arr[1] = new PairVal(15, 25);
pair_arr[2] = new PairVal(27, 40);
pair_arr[3] = new PairVal(50, 60);
int n = 4;
MaxLengthChainOfPairs maxLengthChainOfPairs = new MaxLengthChainOfPairs();
System.out.println("the length of maximum size chain is "
+ maxLengthChainOfPairs.maxChainLength(pair_arr, n));
}
}
class PairVal
{
int a;
int b;
PairVal(int a, int b)
{
this.a = a;
this.b = b;
}
}
$ javac MaxLengthChainOfPairs.java $ java MaxLengthChainOfPairs the length of maximum size chain is 3
Related posts:
StringBuilder vs StringBuffer in Java
Spring Boot with Multiple SQL Import Files
Spring MVC Async vs Spring WebFlux
Why String is Immutable in Java?
Java equals() and hashCode() Contracts
Java Program to Convert a Decimal Number to Binary Number using Stacks
Hướng dẫn Java Design Pattern – Dependency Injection
Introduction to the Java NIO Selector
Java 8 Predicate Chain
ArrayList trong java
Spring Boot Application as a Service
How to Read a File in Java
Hướng dẫn Java Design Pattern – Proxy
Disable DNS caching
Truyền giá trị và tham chiếu trong java
Java Program to Implement Borwein Algorithm
Hướng dẫn sử dụng biểu thức chính quy (Regular Expression) trong Java
Java Program to Implement Min Heap
Java Program to Search for an Element in a Binary Search Tree
Pagination and Sorting using Spring Data JPA
Java InputStream to String
Java Streams vs Vavr Streams
Spring Boot Gradle Plugin
Spring Security OAuth2 – Simple Token Revocation
Giới thiệu Aspect Oriented Programming (AOP)
Autoboxing và Unboxing trong Java
Handle EML file with JavaMail
Get and Post Lists of Objects with RestTemplate
Creating Docker Images with Spring Boot
Java Program to Implement SimpeBindings API
Spring Security with Maven
Toán tử instanceof trong java