Red de conocimiento informático - Conocimiento informático - Se sabe que dos listas de secuencias A y B representan dos conjuntos cuyos elementos están ordenados en orden ascendente Escribe una función para encontrar la intersección de A y B.

Se sabe que dos listas de secuencias A y B representan dos conjuntos cuyos elementos están ordenados en orden ascendente Escribe una función para encontrar la intersección de A y B.

Dado que la pregunta es inconsistente con el complemento de la pregunta, la pregunta requiere intersección, que consiste en encontrar los mismos elementos de A y B. El complemento de la pregunta requiere una unión, que se enfatizó para no fusionarse en función de la unión. Es una intersección, la modificaré ligeramente.

LinkList *LinkMag(LinkList *ha, LinkList *hb)//asumiendo que ha y hb son listas enlazadas con nodos principales

{

Link *p, *q, *r, *hc, *aa;

hc-gt; head = (Enlace*) malloc(sizeof(Enlace));

p = ha-gt; siguiente;

q = hb-gt; siguiente

r = hc

mientras (p!=NULL amp; amp; q!=NULL)

{ aa = (Link*) )malloc(sizeof(Link));

if(p-gt; datalt; q-gt; data)//Si es una intersección , no hay transferencia de datos, solo movimiento del puntero, es decir, simplemente ejecute p=p-gt;

{ aa-gt; p-gt; > p = p-gt; next;

}

else/// Si es una intersección, también debes determinar la situación de igualdad y solo pasarla si es igual. datos, y el caso mayor que es similar al caso menor que, excepto que el puntero se mueve.

{ aa-gt; datos = q-gt;

q = q-gt;

}

r-gt; siguiente = aa;

r = aa

}

mientras(p!=NULL)

{ aa = (Enlace*)malloc(tamañode(Enlace));

aa-gt; data = p-gt;data;

p = p-gt;siguiente;

r-gt; siguiente = aa;

r = aa

}

mientras(q!=NULL)

<; p> { aa = (Enlace*)malloc(sizeof(Enlace));

aa-gt; datos = q-gt;

q = q-gt; ;

r-gt; siguiente = aa;

r-gt; siguiente = aa;

r-gt; siguiente=NULL;

return hc;