pub fn sort<T>(array: &mut[T]) ->() where
T: Ord, {
for i in 1..(*array).len() {
match crate::search::binary_search(&(*array)[0..i], &array[i]) {
Ok(_) => continue,
Err(point) => {
for j in 0..(i - point) {
(*array).swap(i -j - 1, i - j);
}
}
}
}
if (*array)[(*array).len() - 1] < (*array)[(*array).len() - 2] {
let mut i = (*array).len() - 1;
while i > 0 && (*array)[i - 1] >=(*array)[i] {
(*array).swap(i,i - 1);
i -= 1;
}
}
}