Avatar ·

Como ordenar um vetor em Rust: guia completo com exemplos

Olá a todos! Acabei de começar a estudar Rust e me deparei com um problema ao ordenar um vetor. Em outras linguagens, como Python ou JavaScript, isso é feito em uma linha, mas aqui fiquei completamente confuso.\n\nEu tenho um vetor de números:\n\n```rust\nlet mut numbers = vec![5, 2, 8, 1, 9, 3];\n```\n\nQuero ordená-lo em ordem crescente. Tentei fazer assim:\n\n```rust\nnumbers.sort();\n```\n\nMas o compilador mostra um erro: "the trait `std::cmp::Ord` is not implemented for `i32`". Embora eu pensasse que para números isso deveria funcionar de imediato.\n\nTambém tenho um vetor de strings:\n\n```rust\nlet mut fruits = vec!["banana", "apple", "cherry", "date"];\n```\n\nAqui a ordenação simplesmente não funciona — o compilador reclama sobre borrowing e moving.\n\nAinda tentei ordenar structs:\n\n```rust\nstruct Person {\n nam