Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
|
|
@ -0,0 +1,37 @@
|
|||
function output([Object[]]$A, [Int]$k, [ref]$sign)
|
||||
{
|
||||
"Perm: [$([String]::Join(', ', $A))] Sign: $($sign.Value)"
|
||||
}
|
||||
|
||||
function permutation([Object[]]$array)
|
||||
{
|
||||
function generate([Object[]]$A, [Int]$k, [ref]$sign)
|
||||
{
|
||||
if($k -eq 1)
|
||||
{
|
||||
output $A $k $sign
|
||||
$sign.Value = -$sign.Value
|
||||
}
|
||||
else
|
||||
{
|
||||
$k -= 1
|
||||
generate $A $k $sign
|
||||
for([Int]$i = 0; $i -lt $k; $i += 1)
|
||||
{
|
||||
if($i % 2 -eq 0)
|
||||
{
|
||||
$A[$i], $A[$k] = $A[$k], $A[$i]
|
||||
}
|
||||
else
|
||||
{
|
||||
$A[0], $A[$k] = $A[$k], $A[0]
|
||||
}
|
||||
generate $A $k $sign
|
||||
}
|
||||
}
|
||||
}
|
||||
generate $array $array.Count ([ref]1)
|
||||
}
|
||||
permutation @(0, 1, 2)
|
||||
""
|
||||
permutation @(0, 1, 2, 3)
|
||||
Loading…
Add table
Add a link
Reference in a new issue