fn shift_tail<T, F>(v: &mut [T], is_less: &F)where F: Fn(&T, &T) -> bool,
Shifts the last element to the left until it encounters a smaller or equal element.