首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在Rust中获得对向量进行排序的索引?

在Rust中,可以使用sort_by_key方法来获得对向量进行排序的索引。该方法接受一个闭包作为参数,闭包中定义了排序的规则。以下是一个示例代码:

代码语言:txt
复制
fn main() {
    let mut vec = vec![5, 2, 9, 1, 7];
    let mut indexes: Vec<usize> = (0..vec.len()).collect();

    vec.sort_by_key(|&i| vec[i]);

    indexes.sort_by_key(|&i| vec[i]);

    println!("Sorted indexes: {:?}", indexes);
}

在上述代码中,我们首先创建了一个向量vec和一个索引向量indexes,索引向量的初始值为0到vec.len()的范围。然后,我们使用sort_by_key方法对vec进行排序,排序规则是根据向量中的元素值。接着,我们使用相同的排序规则对索引向量indexes进行排序。最后,打印出排序后的索引向量。

这样,我们就可以通过索引向量来获取原始向量的排序结果。在实际应用中,可以根据需要修改闭包中的排序规则,以适应不同的排序需求。

腾讯云相关产品和产品介绍链接地址:

请注意,以上仅为示例产品,实际应用中可以根据具体需求选择适合的腾讯云产品。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券