Rust 快速排序算法实现

以下是 Rust 语言实现的快速排序算法。

fn quicksort(arr: &mut [i32]) {
    let len = arr.len();
    if len <= 1 {
        return;
    }
    let pivot = arr[len / 2];
    let (mut i, mut j) = (0, len - 1);
    while i <= j {
        while arr[i] < pivot {
            i += 1;
        }
        while arr[j] > pivot {
            j -= 1;
        }
        if i <= j {
            arr.swap(i, j);
            i += 1;
            j -= 1;
        }
    }
    if j > 0 {
        quicksort(&mut arr[0..=j]);
    }
    if i < len - 1 {
        quicksort(&mut arr[i..]);
    }
}

调用 quicksort 函数,传入一个可变的整数数组,即可对数组进行快速排序。

Rust 快速排序算法实现

原文地址: https://www.cveoy.top/t/topic/ln9e 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录