Page 292 - Do it! 자료구조와 함께 배우는 알고리즘(C 언어, 3쇄)
P. 292

unsigned long형의 비트 벡터로 집합을 구현하는 프로그램을 작성해 보겠습니다. 실습 7-5

                   는 프로그램의 헤더입니다.

                      실습 7-5                                                  •완성 파일 chap07/BitSet.h
                     01  /* 비트 벡터 집합 BitSet(헤더) */
                     02  #ifndef ___BitSet
                     03  #define ___BitSet
                     04
                     05  typedef unsigned long BitSet;            /* 집합을 나타내는 자료형 */
                     06
                     07  #define BitSetNull   (BitSet)0           /* 공집합 */
                     08  #define BitSetBits     32               /* 유효 비트 수 */
                     09  #define SetOf(no) ((BitSet)1 <<(no))      /* 집합 {no} */
                     10
                     11  /*--- 집합 s에 n이 있는지 확인 ---*/
                     12  int IsMember(BitSet s, int n);
                     13
                     14  /*--- 집합 s에 n을 추가 ---*/
                     15  void Add(BitSet *s, int n);
                     16
                     17  /*--- 집합 s에서 n을 삭제 ---*/
                     18  void Remove(BitSet *s, int n);
                     19
                     20  /*--- 집합 s의 원소 개수를 반환 ---*/
                     21  int Size(BitSet s);
                     22
                     23  /*--- 집합 s의 모든 원소를   출력 ---*/
                     24  void Print(BitSet s);
                     25
                     26  /*--- 집합 s의 모든 원소를   출력(줄 바꿈 문자 포함) ---*/
                     27  void PrintLn(BitSet s);
                     28
                     29  #endif


















                   292   C 알고리즘
   287   288   289   290   291   292   293   294   295   296   297