Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
26
Task/Permutations/PowerShell/permutations.psh
Normal file
26
Task/Permutations/PowerShell/permutations.psh
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
function permutation ($array) {
|
||||
function generate($n, $array, $A) {
|
||||
if($n -eq 1) {
|
||||
$array[$A] -join ' '
|
||||
}
|
||||
else{
|
||||
for( $i = 0; $i -lt ($n - 1); $i += 1) {
|
||||
generate ($n - 1) $array $A
|
||||
if($n % 2 -eq 0){
|
||||
$i1, $i2 = $i, ($n-1)
|
||||
$A[$i1], $A[$i2] = $A[$i2], $A[$i1]
|
||||
}
|
||||
else{
|
||||
$i1, $i2 = 0, ($n-1)
|
||||
$A[$i1], $A[$i2] = $A[$i2], $A[$i1]
|
||||
}
|
||||
}
|
||||
generate ($n - 1) $array $A
|
||||
}
|
||||
}
|
||||
$n = $array.Count
|
||||
if($n -gt 0) {
|
||||
(generate $n $array (0..($n-1)))
|
||||
} else {$array}
|
||||
}
|
||||
permutation @('A','B','C')
|
||||
Loading…
Add table
Add a link
Reference in a new issue