Java Program to Check if a set is the subset of another set


In this article, we will understand how to check if a set is the subset of another set. A Set is a Collection that cannot contain duplicate elements. It models the mathematical set abstraction. The Set interface contains only methods inherited from Collection and adds the restriction that duplicate elements are prohibited.

Below is a demonstration of the same −

Suppose our input is

First set: [90, 75, 60, 45]
Second set : [90, 60]

The desired output would be

Is a sets sub-set of the other?
true

Algorithm

Step 1 - START
Step 2 - Declare namely
Step 3 - Define the values.
Step 4 - Create two Sets, and add elements to it using the ‘add’ method.
Step 5 - Display the Sets on the console.
Step 6 - Create a Boolean variable and call the ‘containsAll’ method on one set with respect to the other.
Step 7 - This checks if one set is a subset of the other.
Step 8 - If yes, it returns True, else False.
Step 9 - Display the result on the console.
Step 10 - Stop

Example 1

Here, we bind all the operations together under the ‘main’ function.

import java.util.HashSet;
import java.util.Set;
public class Demo {
   public static void main(String[] args) {
      System.out.println("The required packages have been imported");
      Set<Integer> input_set_1 = new HashSet<>();
      input_set_1.add(45);
      input_set_1.add(60);
      input_set_1.add(75);
      input_set_1.add(90);
      System.out.println("The first set is defined as: " + input_set_1);
      Set<Integer> input_set_2 = new HashSet<>();
      input_set_2.add(60);
      input_set_2.add(90);
      System.out.println("The second set is defined as: " + input_set_2);
      boolean result = input_set_1.containsAll(input_set_2);
      System.out.println("\nIs a sets sub-set of the other? \n" + result);
   }
}

Output

The required packages have been imported
The first set is defined as: [90, 75, 60, 45]
The second set is defined as: [90, 60]

Is a sets sub-set of the other?
true

Example 2

Here, we encapsulate the operations into functions exhibiting object-oriented programming.

import java.util.HashSet;
import java.util.Set;
public class Demo {
   static void is_subset(Set<Integer> input_set_1, Set<Integer> input_set_2){
      boolean result = input_set_1.containsAll(input_set_2);
      System.out.println("\nIs a sets sub-set of the other? \n" + result);
   }
   public static void main(String[] args) {
      System.out.println("The required packages have been imported");
      Set<Integer> input_set_1 = new HashSet<>();
      input_set_1.add(45);
      input_set_1.add(60);
      input_set_1.add(75);
      input_set_1.add(90);
      System.out.println("The first set is defined as: " + input_set_1);
      Set<Integer> input_set_2 = new HashSet<>();
      input_set_2.add(60);
      input_set_2.add(90);
      System.out.println("The second set is defined as: " + input_set_2);
      is_subset(input_set_1, input_set_1);
   }
}

Output

The required packages have been imported
The first set is defined as: [90, 75, 60, 45]
The second set is defined as: [90, 60]

Is a sets sub-set of the other?
true

Updated on: 30-Mar-2022

778 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements