1pub fn insertion_sort<T: Ord>(arr: &mut [T]) { 2 for i in 1..arr.len() { 3 let mut j = i; 4 while j > 0 && arr[j - 1] > arr[j] { 5 arr.swap(j - 1, j); 6 j -= 1; 7 } 8 } 9}