데이터 구조 --- 집합의 표시

5154 단어 데이터 구조
집합의 표시 및 찾기
  • 집합 연산: 교, 병, 보, 차, 한 요소 가 특정한 집합 에 속 하 는 지 판단 한다.
  • 과 차 집: 집합 과 차 모 요 소 는 어떤 집합 에 속 합 니까
  • 집중 집합 저장 소 가 어떻게 실현 되 는 지 확인 합 니 다. (1) 나무 구조 로 집합 을 표시 하고 나무의 모든 노드 는 하나의 집합 요 소 를 대표 합 니 다.(2) 배열 저장 형식 을 사용한다.
  • 집합 검색:
  • typedef struct TreeNode* HuffmanTree;
    
    struct TreeNode{
        int weight;
        HuffmanTree left, right;
    };
    
    HuffmanTree Huffman( MinHeap H )
    {
        int i;
        HuffmanTree T;
        BuildMinHeap(H);
        for( i=1; i<H->size; i++)
        {
        T = malloc(sizeof(struct TreeNode));
        T->left = DeleteMin(H);
        T->right = DeleteMin(H);
        T->weight = T->left->weight + T->right->weight;
        Insert(H, T);
        }
        T = DeleteMin(H);
        return T;
    }
    

    집합 적 병렬 연산
    void Union( SetType S[], ElementType X1, ElementType X2)
    {
        int Root1, Root2;
        Root1 = Find( S, X1);
        Root2 = Find( S, X2);
        if(Root1 != Root2) S[Root1].Parent = Root2;
    }
    

    좋은 웹페이지 즐겨찾기