fix some file extensions
This commit is contained in:
parent
68f8f3e56b
commit
f3a896c724
789 changed files with 91 additions and 62 deletions
18
Task/Permutations/CoffeeScript/permutations-1.coffee
Normal file
18
Task/Permutations/CoffeeScript/permutations-1.coffee
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
# Returns a copy of an array with the element at a specific position
|
||||
# removed from it.
|
||||
arrayExcept = (arr, idx) ->
|
||||
res = arr[0..]
|
||||
res.splice idx, 1
|
||||
res
|
||||
|
||||
# The actual function which returns the permutations of an array-like
|
||||
# object (or a proper array).
|
||||
permute = (arr) ->
|
||||
arr = Array::slice.call arr, 0
|
||||
return [[]] if arr.length == 0
|
||||
|
||||
permutations = (for value,idx in arr
|
||||
[value].concat perm for perm in permute arrayExcept arr, idx)
|
||||
|
||||
# Flatten the array before returning it.
|
||||
[].concat permutations...
|
||||
Loading…
Add table
Add a link
Reference in a new issue