Instruções
Algoritmos de ordenação/ordenação de permutação
Escreva uma função para implementar uma ordenação de permutação, que gere as possíveis permutações do array de entrada até descobrir a forma ordenada. A função deve retornar o array ordenado.
Pseudocódigo:
<pre><b>while not</b> InOrder(list) <b>do</b>
nextPermutation(list)
<b>done</b>
</pre>
O que fazer:
Testes:
- `permutationSort` deve ser uma função.
- `permutationSort([25, 32, 12, 7, 20])` deve retornar um array.
- `permutationSort([25, 32, 12, 7, 20])` deve retornar `[7, 12, 20, 25, 32]`.
- `permutationSort([38, 45, 35, 8, 13])` deve retornar `[8, 13, 35, 38, 45]`.
- `permutationSort([43, 36, 20, 34, 24])` deve retornar `[20, 24, 34, 36, 43]`.
- `permutationSort([12, 33, 26, 18, 1, 16, 38])` deve retornar `[1, 12, 16, 18, 26, 33, 38]`.
- `permutationSort([3, 39, 48, 16, 1, 4, 29])` deve retornar `[1, 3, 4, 16, 29, 39, 48]`.
Console