如何对向量的一部分进行排序?

Cod*_*ula 2 sorting rust

在 C++ 中,我们可以轻松地对向量的一部分进行排序

排序(A.begin()+开始,A.begin()+结束);

但在 Rust 中我找不到好的方法,有人可以帮助我吗?

lko*_*bly 10

您可以对可变切片调用sort(),例如向量的一部分,如下所示:

fn main() {
    let mut v: Vec<u32> = vec![7, 6, 5, 4, 3, 2, 1];
    v[2..5].sort();
    println!("{:?}", v);
}
Run Code Online (Sandbox Code Playgroud)

游乐场

  • 旁白:除非需要稳定性,否则更喜欢“sort_unstable()”。 (6认同)
  • [你不需要那里的`&amp;mut`](https://play.rust-lang.org/?version=stable&amp;mode=debug&amp;edition=2021&amp;gist=5f5683ce4b2ff012e21e0afbd00dead9) (2认同)