Union/find structure implemented by bitvectors
The concept is simpler than you think.

Assuming 8 bit words and a bitvector of only one word length,

1 = 00000001  
3 = 00000100  
6 = 00100000


The collection is the union of the three individual elements, which is to say 00100101.

Also, wikipedia: http://en.wikipedia.org/wiki/Bit_array