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