Cómo ordenar un vector en Rust: guía completa con ejemplos
¡Hola a todos! Acabo de empezar a aprender Rust y me encontré con el problema de ordenar un vector. En otros lenguajes, como Python o JavaScript, esto se hace en una línea, pero aquí estoy completamente confundido.
Tengo un vector de números:
```rust
let mut numbers = vec![5, 2, 8, 1, 9, 3];
```
Quiero ordenarlo de forma ascendente. Intenté hacerlo así:
```rust
numbers.sort();
```
Pero el compilador muestra un error: "the trait `std::cmp::Ord` is not implemented for `i32`". Aunque pensé que para los números debería funcionar de forma nativa.
También tengo un vector de strings:
```rust
let mut fruits = vec!["banana", "apple", "cherry", "date"];
```
Aquí la ordenación no funciona en absoluto — el compilador dice algo sobre borrowing y moving.
Además, intenté ordenar structs:
```rust
struct Person {
name: String,
age: u32,
}
let mut people = vec![
Person { name: "Alice".to_string(), age: 30 },
Person { name: "Bob".to_string(), age: 25 },
Person { name: "Charlie".to_string(),