| |
|
|
p.specht
| proc QuickSortUp11400dans3sec :parameters a![]:declare n&,p&,l&,r&,s&,sl&[],sr&[],w! declare x!,i&,j&:n&=sizeof(a![]):s&=1:sl&[1]=0:sr&[1]=n&-1 tandis que s&>0:l&=sl&[s&]:r&=sr&[s&]:s&=s&-1:tandis que l&<r&:i&=l&:j&=r&:p&=(l&+r&)\2 si a![l&]>a![p&]:w!=a![l&]:a![l&]=a![p&]:a![p&]=w!:endif si a![l&]>a![r&]:w!=a![l&]:a![l&]=a![r&]:a![r&]=w!:endif si a![p&]>a![r&]:w!=a![p&]:a![p&]=a![r&]:a![r&]=w!:endif:x!=a![p&] tandis que i&<=j&:tandis que a![i&]<x!:inc i&:endwhile:tandis que x!<a![j&]:dec j&:endwhile si i&<=j&:w!=a![i&]:a![i&]=a![j&]:a![j&]=w!:inc i&:dec j&:endif:endwhile si (j&-l&)<(r&-i&):si i&<r&:inc s&:sl&[s&]=i&:sr&[s&]=r&:endif:r&=j&:d'autre si l&<j&:inc s&:sl&[s&]=l&:sr&[s&]=j&:endif:l&=i&:endif:endwhile:endwhile endproc
proc QuickSortDwn11000dans3sec :parameters a![]:declare n&,p&,l&,r&,s&,sl&[],sr&[],w! declare x!,i&,j&:n&=sizeof(a![]):s&=1:sl&[1]=0:sr&[1]=n&-1 tandis que s&:l&=sl&[s&]:r&=sr&[s&]:s&=s&-1:tandis que l&<r&:i&=l&:j&=r&:p&=(l&+r&)\2 si a![l&]>a![p&]:w!=a![l&]:a![l&]=a![p&]:a![p&]=w!:endif si a![l&]>a![r&]:w!=a![l&]:a![l&]=a![r&]:a![r&]=w!:endif si a![p&]>a![r&]:w!=a![p&]:a![p&]=a![r&]:a![r&]=w!:endif:x!=a![p&] tandis que i&<=j&:tandis que a![i&]>x!:inc i&:endwhile:tandis que x!>a![j&]:dec j&:endwhile si i&<=j&:w!=a![i&]:a![i&]=a![j&]:a![j&]=w!:inc i&:dec j&:endif:endwhile si (j&-l&)<(r&-i&):si i&<r&:inc s&:sl&[s&]=i&:sr&[s&]=r&:endif:r&=j&:d'autre si l&<j&:inc s&:sl&[s&]=l&:sr&[s&]=j&:endif:l&=i&:endif:endwhile:endwhile endproc |
|
|
| Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'... | 15.05.2021 ▲ |
|
|
|