Considera insiemi di valori (rappresentati come array ordinati senza duplicati e con una dimensione nota (ovvero la dimensione può essere ottenuta in O (1)). I valori possono essere testati per l'uguaglianza nel tempo O (1). per ottenere l'insieme di valori presenti in almeno insiemi diversi tra i .
L'algoritmo ovvio per farlo è quello di esaminare tutti gli insiemi, contare il numero di occorrenze di ciascun valore e restituire quelli con un conteggio superiore a . Tuttavia, in alcuni casi, puoi fare di meglio: ad esempio, quando e quando un set è molto più piccolo dell'altro set , è più efficiente guardare tutti gli elementi di ed eseguire una ricerca binaria per ciascuno di essi in : l'approccio di ricerca binaria costa mentre l'approccio ingenuo costa che è peggio quando.
Con questo in mente, in quali situazioni possiamo fare meglio dell'algoritmo ingenuo? (Se questo è un problema ben noto, sarei felice di conoscere il suo solito nome e di avere riferimenti.)