Comment trier un vecteur dans Rust?
Quelle est la méthode actuellement recommandée pour trier les valeurs dans un vecteur?
44
demandé sur
Tshepang
2014-11-10 06:54:56
2 réponses
Une tranche mutable d'éléments avec un ordre total a un sort
méthode.
, Car Vec<T>
implémente DerefMut<[T]>
, vous pouvez appeler cette méthode directement sur un vecteur, vector.sort()
œuvres.
52
répondu
Chris Morgan
2015-05-24 21:32:00
Alors que les solutions proposées ci-dessus peuvent trier les vecteurs d'entiers, j'ai eu des problèmes dans le tri des vecteurs de flotteurs.
La solution la plus simple était d'utiliser la caisse quickersort, qui peut également trier les flotteurs. La caisse quickersort peut également trier d'autres vecteurs de tout type et implémente également des méthodes pour trier à l'aide de comparaisons (sort_by).
Voici le code Rust:
extern crate quickersort;
//let's create the vector with the values
let mut vals = Vec::new();
vals.push(31.2);
vals.push(31.2);
vals.push(10.0);
vals.push(100.4);
vals.push(4.1);
quickersort::sort_floats(&mut vals[..]); // sort the vector
0
répondu
Salvatore Cosentino
2017-09-19 09:02:25