A quickselect algorithm adapted from [Rust's implementation](https://doc.rust-lang.org/std/primitive.slice.html#method.sort_unstable_by) of the [pdqsort](https://github.com/orlp/pdqsort/) algorithm. NOTE: you may want to use Rust's official version of this algorithm, [`select_nth_unstable_by`](https://doc.rust-lang.org/std/primitive.slice.html#method.select_nth_unstable_by)