Take the union of all sets in the first table and use that to removeAll( ... ) for all the sets in the second table. If something is actually removed the intersection of the two tables wasn't empty. If your data survives this test do the first test per table.

How are these things being populated?
Wouldn't it be better to have some sort of master set. As you add numbers into the other sets, you add them into the master set first and only add them to these other sets if they didn't already exist in the master.