@[inline]
def
Array.insertionSort
{α : Type u_1}
(xs : Array α)
(lt : α → α → Bool := by exact (· < ·))
:
Array α
Equations
- xs.insertionSort lt = Array.insertionSort.traverse lt xs 0 xs.size
Instances For
@[specialize #[]]
def
Array.insertionSort.traverse
{α : Type u_1}
(lt : α → α → Bool := by exact (· < ·))
(xs : Array α)
(i fuel : Nat)
:
Array α
Equations
- Array.insertionSort.traverse lt xs i 0 = xs
- Array.insertionSort.traverse lt xs i fuel_2.succ = if h : i < xs.size then Array.insertionSort.traverse lt (Array.insertionSort.swapLoop lt xs i h) (i + 1) fuel_2 else xs