#!/bin/bash
:<<!
insertion-sort
!
declare -a a
declare -f sort_func
a=(9 8 3 1 6)
len=${#a[*]}
function sort_func(){
local arr=($1)
for((j=1;j<$len;j++))
do
key=${arr[$j]}
let i=j-1
while [ $i -ge 0 -a ${arr[$i]} -gt $key ]
do
arr[$[$i+1]]=${arr[$i]}
let i--
done
arr[$[$i+1]]=$key
done
echo ${arr[*]}
}
ret_arr=($(sort_func "${a[*]}"))
echo ${ret_arr[@]}