fn shift_head<T, F>(v: &mut [T], is_less: &F)where F: Fn(&T, &T) -> bool,
Shifts the first element to the right until it encounters a greater or equal element.