#median #array #merge #algorithm #list #find

hidden-median

在不破坏排序状态的情况下合并两个列表,找到中位数

4 个版本

0.1.3 2021 年 8 月 22 日
0.1.2 2021 年 8 月 21 日
0.1.1 2021 年 8 月 21 日
0.1.0 2021 年 8 月 21 日

#2286 in 算法

MIT 许可证

12KB
207

hidden_median

在 Olog(min(a, b)) 时间内找到 2 个有序数组中的隐藏中位数。

这个 crate 可以与数组和向量一起使用。我还避免了递归和 while 循环,以最小化运行时间,而是使用了一个只运行 Olog(min(a, b)) 次的 plain for 循环。

简而言之,这就是为你准备的 hidden_median crate。让我们快速看一个例子!

快速开始

use hidden_median::interface::Holder;
     
fn main() {
    let list_a = [-3, -1, 5, 6];
    let list_b = [-7, -2, 4, 8, 11];

    let mut holder = Holder::new(&list_a, &list_b);

    let result = holder.init().result();
    
    // `result` is a tuple, that comes with a help text!
    
    println!("{:?}", result);
    
    // output: (4, 4, "median is a single number.")
}

版本说明:修改了 readme

无运行时依赖