Set consolidation: Difference between revisions

GP
(Added Haskell solution)
(GP)
Line 438:
{ {B A C D} }
{ {K I F G H} {B A C D} }</pre>
 
=={{header|PARI/GP}}==
<lang parigp>cons(V)={
my(v,u,s);
for(i=1,#V,
v=V[i];
for(j=i+1,#V,
u=V[j];
if(#setintersect(u,v),V[i]=v=vecsort(setunion(u,v));V[j]=[];s++)
)
);
V=select(v->#v,V);
if(s,cons(V),V)
};</lang>
 
=={{header|Perl 6}}==