gpt4 book ai didi

vector - 如何将两个 Rust 向量交织成一个新向量?

转载 作者:行者123 更新时间:2023-12-01 14:35:54 29 4
gpt4 key购买 nike

我需要一种惯用的方式来交织这两个向量:

v1 = vec![1.0, 2.0, 3.0];
v2 = vec![4.0, 5.0, 6.0];

我期望的输出是:

v3 is [1.0, 4.0, 2.0, 5.0, 3.0, 6.0];

我尝试使用 itertool 的 interlace 函数,但我无法让迭代器收集到 Vec 类型。很可能我用错了。

最佳答案

使用 interleave()函数或 interleave()方法来自 Itertools crate :

use itertools::{interleave, Itertools};

fn main() {
let v1 = vec![1.0, 2.0, 3.0];
let v2 = vec![4.0, 5.0, 6.0];
let v = interleave(v1, v2).collect::<Vec<_>>();
dbg!(v);

let v1 = vec![1.0, 2.0, 3.0];
let v2 = vec![4.0, 5.0, 6.0];
let v = v1
.into_iter()
.interleave(v2.into_iter())
.collect::<Vec<_>>();
dbg!(v);
}

关于vector - 如何将两个 Rust 向量交织成一个新向量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59267842/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com