Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

두 집합의 교집합을 계산하는 Java 프로그램

<시간/>

이 기사에서는 두 집합의 교집합을 계산하는 방법을 이해합니다. Set은 중복 요소를 포함할 수 없는 Collection입니다. 수학적 집합 추상화를 모델링합니다. Set 인터페이스는 Collection에서 상속된 메서드만 포함하고 중복 요소가 금지된다는 제한을 추가합니다.

아래는 동일한 데모입니다 -

입력이 다음과 같다고 가정 -

First set: [40, 45]
Second set: [50, 45]

원하는 출력은 -

The intersection of two sets is: [45]

알고리즘

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 - Compute the intersection of the sets using the ‘retainAll’ method.
Step 7 - Display the intersection (all the unique elements) of both the sets on the console.
Step 8 - Stop

예시 1

여기에서 모든 작업을 'main' 기능 아래에 묶습니다.

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(40);
      input_set_1.add(45);
      System.out.println("The first set is defined as: " + input_set_1);
      Set<Integer> input_set_2 = new HashSet<>();
      input_set_2.add(45);
      input_set_2.add(50);
      System.out.println("The second set is defined as: " + input_set_2);
      input_set_2.retainAll(input_set_1);
      System.out.println("\nThe intersection of two sets is: " + input_set_2);
   }
}

출력

The required packages have been imported
The first set is defined as: [40, 45]
The second set is defined as: [50, 45]

The intersection of two sets is: [45]

예시 2

여기에서 객체 지향 프로그래밍을 나타내는 함수로 작업을 캡슐화합니다.

import java.util.HashSet;
import java.util.Set;
public class Demo {
   static void set_intersection(Set<Integer> input_set_1, Set<Integer> input_set_2){
      input_set_2.retainAll(input_set_1);
      System.out.println("\nThe intersection of two sets is: " + input_set_2);
   }
   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(40);
      input_set_1.add(45);
      System.out.println("The first set is defined as: " + input_set_1);
      Set<Integer> input_set_2 = new HashSet<>();
      input_set_2.add(45);
      input_set_2.add(50);
      System.out.println("The second set is defined as: " + input_set_2);
      set_intersection(input_set_1, input_set_2);
   }
}

출력

The required packages have been imported
The first set is defined as: [40, 45]
The second set is defined as: [50, 45]

The intersection of two sets is: [45]