Maison > développement back-end > Golang > le corps du texte

Comment inverser le tri d'une tranche entière en Go ?

Linda Hamilton
Libérer: 2024-11-15 10:58:02
original
237 Les gens l'ont consulté

How to Reverse-Sort an Integer Slice in Go?

Tri inverse d'une tranche d'entiers dans Go

Dans Go, vous pourriez rencontrer le besoin de trier une tranche d'entiers par ordre décroissant ( du plus haut au plus bas). Bien que la fonction sort.Ints offre un moyen simple de trier les valeurs par ordre croissant, elle n'offre pas d'option de tri inversé.

Pour réaliser un tri inversé, vous avez essayé par erreur d'utiliser sort.Sort(sort.Reverse (sort.Ints(keys))) en conjonction avec la fonction sort.Reverse. Cependant, sort.Ints est conçu pour être utilisé directement avec la fonction de tri sur les tableaux int, et essayer de l'utiliser comme valeur dans sort.Sort entraîne une erreur de compilation.

La solution réside dans l'utilisation du IntSlice prédéfini. type fourni par le package sort, qui implémente l’interface sort.Interface. Ce type vous permet de mettre en œuvre des stratégies de tri personnalisées, y compris le tri inversé.

Exemple :

keys := []int{3, 2, 8, 1}
sort.Sort(sort.Reverse(sort.IntSlice(keys)))
fmt.Println(keys) // Output: [8 3 2 1]
Copier après la connexion

En utilisant sort.IntSlice et son implémentation Reverse, vous pouvez efficacement triez à l'envers votre tranche d'entiers dans Go.

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