想到一个船新排序算法,任何情况下复杂度都是 O(1),我把它叫做赵高排序。具体实现也很简单,下面是 Rust 的范例:

fn zhaogao_sort<T: Clone>(source: T) -> T {
source.clone()
}

排序的结果也是绝对正确的,至少我没发现有什么错误的情况,是高效的。

这里就要谈到它的另一个强大的特性,它可以排列任何东西。只是现在这个 Rust这里是返回一个 Clone 之后的变量,如果没有这种需求的话还可以做到真正的给任何东西排序,实现大概是下面这个样子:

fn universal_zhaogao_sort<T>(source: T) -> T {
source
}

可以看出这种算法有很强的潜力。希望能给大家带来帮助,谢谢茄子。

Follow

pub trait<T> ZhaogaoSort<T> {
fn sort(self) -> T;
}

impl<T> ZhaogaoSort for T {
fn zhaogao_sort(self) -> Self {
self
}

fn zhaogao_sort_ref(&self) -> &Self {
self
}

fn zhaogao_sort_mut(&mut self) -> &mut Self {
self
}
}

经大佬们指点后的另一种实现(冇眼睇的那种)。

@thislight (你想想跟赵高相关最有名的典故是什么

Sign in to participate in the conversation
SaltedFish Network

Nothing but Salted Fish.