Programing

두 집합의 교차점을 계산하는 방법

c10106 2022. 5. 19. 22:34
반응형

두 집합의 교차점을 계산하는 방법

중복 가능:
문자열 집합의 가변 개수의 교차점을 효율적으로 찾음

해시셋이 두 개 있는데, 그 교차점을 어떻게 계산하지?

Set<String> s1 = new HashSet<String>();

Set<String> s2 = new HashSet<String>();

S1 INT S2 ?

다음 방법을 사용하십시오.

Set<String> s1;
Set<String> s2;
s1.retainAll(s2); // s1 now contains only elements in both sets

세트를 보존하려면 교차로를 고정할 새 세트를 만드십시오.

Set<String> intersection = new HashSet<String>(s1); // use the copy constructor
intersection.retainAll(s2);

자바도크retainAll()당신이 원하는 게 바로 그것이라고 말한다.

지정된 집합에 포함된 이 집합의 요소만 보존(선택적 연산)즉, 지정된 집합에 포함되지 않은 모든 요소를 이 집합에서 제거한다.지정된 집합도 집합인 경우, 이 연산은 값이 두 집합교차점이 되도록 이 집합을 효과적으로 수정한다.

그래 있다.retainAll이것을 확인하다.

Set<Type> intersection = new HashSet<Type>(s1);
intersection.retainAll(s2);

참조URL: https://stackoverflow.com/questions/8882097/how-to-calculate-the-intersection-of-two-sets

반응형