C++ sets class 1.0

라이센스: 무료 ‎파일 크기: 13.99 KB
‎사용자 평가: 3.6/5 - ‎8 ‎투표

세트 클래스를 사용하여 프로그램에서 집합 작업을 수행할 수 있습니다. 서명되지 않은 긴 정수의 개인 배열에서 집합 요소를 비트로 나타냅니다. 배열 크기는 응용 프로그램에 맞게 변경할 수 있는 정의된 상수입니다. 집합 클래스는 C++ 연산자 오버로드를 통해 다음과 같은 집합 작업을 지원합니다. 연합 두 세트 A의 조합, B는 A 또는 B에 속하는 모든 요소의 집합입니다. 집합 클래스에서 기호 +는 이진 조합 연산자입니다. + B = {x : x는 A -또는 - x가 B} 교차로 두 세트 A의 교차점A, B는 A와 B모두에 속하는 모든 요소의 집합입니다. 기호 *는 바이너리 교차 연산자입니다. A * B = {x : x는 A -와 - x가 B} 예제 A = {1, 2, 3, 4} 및 B = {3, 4, 5, 6}를 보자. 다음 + B = {1, 2, 3, 4, 5, 6} A * B = {3, 4} 보완 세트 이론에서 세트는 고정 된 범용 집합 U의 하위 집합입니다. 세트 클래스에서 U는 1에서 MAX_WORDS * WORD_SIZE 번호가 매겨진 요소 집합입니다. 아래 클래스 선언 파일에서는 다음과 같은 정의가 만들어집니다. #define MAX_WORDS 2 #define WORD_SIZE (8 × 크기 (서명되지 않은 긴) ) 이러한 매개 변수는 세트에서 U, 1 ~ 64의 범위를 만듭니다. U 크기를 늘리거나 줄이려면 정의된 값을 MAX_WORDS 변경합니다. 세트 A의 보완은 U에 속하지만 A에 속하지 않는 요소 집합입니다. 기호 ~ 는 비어리 보완 연산자입니다 : ~ A = {x : x는 U에, x는 A에 없습니다 } 예제 A = {1, 2, 3, 4} 및 B = {3, 4, 5, 6}를 보자. 다음 ~A = {5, 6, 7, .} ~B = {1, 2, 7, 8, 9, .} 차이 두 세트 A의 차이, B는 B의 덜 A에 속하는 모든 요소의 집합입니다. 기호 - 바이너리 차이 연산자입니다 : A - B = {x : x는 A에, x는 B} 예제 A = {1, 2, 3, 4} 및 B = {3, 4, 5, 6}를 보자. 다음 A - B = {1, 2} A - B = A * ~ B를 표시할 수 있습니다. 대칭 차이 두 세트 A의 대칭 차이는 B는 A 또는 B에 속하는 모든 요소의 집합이지만 둘 다 아닙니다.

버전 기록

  • 버전 1.0 에 게시 2001-01-15
    새 릴리스

프로그램 세부 정보