Só pra causar um pouco de caos na discussão sobre paralelismo:
Em 2011, um usuário do 4chan publicou o Sleep Sort. A ideia é vc criar uma thread pra cada elemento do seu vetor, e fazê-la dormir por um tempo proporcional ao valor do elemento. Aí, é só pedir pra cada thread imprimir o seu valor quando voltar a executar.
Aqui o vai o código (que eu copiei direto do link acima), pra quem se interessar:
#!/bin/bash
function f() {
sleep "$1"
echo "$1"
}
while [ -n "$1" ]
do
f "$1" &
shift
done
wait
example usage:
./sleepsort.bash 5 3 6 3 6 3 1 4 7
Pra quem está começando: esse exemplo não é nada útil em termos de como ordenar um vetor. Mas, ainda assim, ele dá uma saída correta xD