Maison > développement back-end > Golang > Comment créer des clés composites pour les cartes de hachage dans Go ?

Comment créer des clés composites pour les cartes de hachage dans Go ?

Mary-Kate Olsen
Libérer: 2024-11-09 06:50:02
original
486 Les gens l'ont consulté

How to Create Composite Keys for Hash Maps in Go?

Création de clés composites pour les cartes de hachage dans Go

Dans Go, définir une clé composite pour une carte de hachage implique de combiner plusieurs valeurs pour créer un clé unique. Cette technique est utile lorsque vous souhaitez indexer des données en fonction de plusieurs paramètres, tels que le calcul et le stockage de la valeur de pow(x, y) où x et y sont des nombres entiers.

Solution

L'approche la plus simple consiste à créer une structure qui représente la clé composite, incorporant les champs obligatoires :

type Key struct {
    X, Y int
}
Copier après la connexion

Cette structure définit une clé avec deux champs entiers, X et Y, qui peuvent être utilisé pour identifier de manière unique chaque entrée dans la carte de hachage :

m := map[Key]int{}
m[Key{2, 2}] = 4
m[Key{2, 3}] = 8

fmt.Println("2^2 = ", m[Key{2, 2}])
fmt.Println("2^3 = ", m[Key{2, 3}])
Copier après la connexion

L'utilisation de cette structure comme type de clé garantit que chaque entrée dans la carte est identifiable de manière unique en fonction des valeurs X et Y. Cela vous permet de récupérer efficacement la valeur stockée correspondante à l'aide de la clé composite.

Considérations importantes

Il est crucial de noter que l'utilisation de pointeurs comme types de clés doit être évitée, car ils comparent les adresses mémoire au lieu des valeurs réelles. De plus, les tableaux peuvent être utilisés comme types de clés, mais ils sont moins polyvalents que les structures.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal