Sorting algorithms/Permutation sort: Difference between revisions
Content added Content deleted
m (→{{header|jq}}) |
(Added Crystal implementation.) |
||
Line 397: | Line 397: | ||
(1 2 3 4 5 6 7 8 9 10)</lang> |
(1 2 3 4 5 6 7 8 9 10)</lang> |
||
=={{header|Crystal}}== |
|||
<lang crystal>def sorted?(items : Array) |
|||
prev = items[0] |
|||
items.each do |item| |
|||
if item < prev |
|||
return false |
|||
end |
|||
prev = item |
|||
end |
|||
return true |
|||
end |
|||
def permutation_sort(items : Array) |
|||
items.each_permutation do |permutation| |
|||
if sorted?(permutation) |
|||
return permutation |
|||
end |
|||
end |
|||
end</lang> |
|||
=={{header|D}}== |
=={{header|D}}== |