MST

星途 面试题库

面试题:Rust复杂生命周期下的泛型函数设计

编写一个泛型函数,该函数接受两个不同类型的引用切片,这些切片中的元素生命周期相同。函数需要遍历这两个切片,比较对应位置的元素(假设元素实现了 `PartialEq` trait),如果相等则返回 `true`,否则返回 `false`。请正确标注所有的生命周期和泛型参数。
46.6万 热度难度
编程语言Rust

知识考点

AI 面试

面试题答案

一键面试
fn compare_slices<'a, T, U>(slice1: &'a [T], slice2: &'a [U]) -> bool
where
    T: PartialEq<U>,
{
    if slice1.len() != slice2.len() {
        return false;
    }
    for (elem1, elem2) in slice1.iter().zip(slice2.iter()) {
        if elem1 != elem2 {
            return false;
        }
    }
    true
}