È possibile implementare una struttura dati Set nel linguaggio Go?
sobes.tech AI
Risposta dell'AI
In Go non esiste una struttura dati Set incorporata, ma può essere implementata usando una mappa (map) con chiavi del tipo desiderato e valori di tipo bool o una struttura vuota struct{}.\n\nEsempio di implementazione di un insieme di stringhe:\n\ngo\npackage main\n\nimport "fmt"\n\nfunc main() {\n set := make(map[string]struct{})\n\n // Aggiunta di elementi\n set["apple"] = struct{}{}\n set["banana"] = struct{}{}\n\n // Verifica della presenza di un elemento\n if _, exists := set["apple"]; exists {\n fmt.Println("apple è nel insieme")\n }\n\n // Rimozione di un elemento\n delete(set, "banana")\n}\n\n\nL'uso di una struttura vuota struct{} invece di bool risparmia memoria, poiché struct{} occupa 0 byte.