[데이터 구조] 두 개의 질서 있 는 단일 체인 표 교 집합 (차 집합) 을 구하 십시오.

글 목록
  • 1. 두 개의 질서 있 는 단일 체인 표 의 교 집합
  • 2. 두 개의 질서 있 는 단일 체인 표 의 집합
  • 단일 체인 테이블 의 실현:https://blog.csdn.net/weixin_41892460/article/details/82855823
    1. 두 개의 질서 있 는 단일 체인 표 의 교차
    void UnionSetJ(pList list1, pList list2)
    {
    	if (list1 == NULL || list2 == NULL)
    		return;
    	while (list1 && list2)
    	{
    		if (list1->data < list2->data)
    		{
    			list1 = list1->next;
    		}
    		else if (list1->data > list2->data)
    		{
    			list2 = list2->next;
    		}
    		else
    		{
    			printf("%d ", list1->data);
    			list1 = list1->next;
    			list2 = list2->next;
    		}
    	}
    }
    
    

    2. 두 개의 질서 있 는 단일 체인 표 의 집합
    void UnionSetC(pList list1, pList list2)
    {
    	pList prev1 = NULL;
    	pList prev2 = NULL;
    	if (list1 == NULL || list2 == NULL)
    		return;
    	while (list1 && list2)
    	{
    		if (list1->data == list2->data)
    		{
    			list1 = list1->next;
    			list2 = list2->next;
    			printf("%d
    ",list1->data); } else if (list1->data > list2->data) { prev2 = list2; list2 = list2->next; printf("%d ", prev2->data); } else { prev1 = list1; list1 = list1->next; printf("%d ", prev1->data); } } while (list1) { printf("%d ", list1->data); list1 = list1->next; } while (list2) { printf("%d ", list2->data); list2 = list2->next; } }

    좋은 웹페이지 즐겨찾기