Domanda

Qual è il modo migliore per determinare se un Hashtable contiene tutte le chiavi / valori di un'altra Hashtable?

Questo può anche essere interpretato come: come determinare se un Hashtable è un sottoinsieme di un'altra Hashtable

.
È stato utile?

Soluzione

iterare su tutte le coppie chiave / valore nel controllo "piccolo" tabella hash e se esistono (con i valori corretti) nella tabella hash "grandi", fondamentalmente. Si potrebbe fare un controllo Count per cominciare a verificare che la tabella "più piccolo" è in realtà più piccolo (o della stessa dimensione) per cominciare, naturalmente.

Questo sarà O (n), dove n è la dimensione della tabella hash minore, assumendo hash ragionevoli maggiore controllo uguaglianza uno e costante di tempo. Non si può fare di meglio.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top