Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
|
|
@ -0,0 +1,18 @@
|
|||
USING: combinators kernel make math locals prettyprint sequences ;
|
||||
IN: rosetta-code.quickselect
|
||||
|
||||
:: quickselect ( k seq -- n )
|
||||
seq unclip :> ( xs x )
|
||||
xs [ x < ] partition :> ( ys zs )
|
||||
ys length :> l
|
||||
{
|
||||
{ [ k l < ] [ k ys quickselect ] }
|
||||
{ [ k l > ] [ k l - 1 - zs quickselect ] }
|
||||
[ x ]
|
||||
} cond ;
|
||||
|
||||
: quickselect-demo ( -- )
|
||||
{ 9 8 7 6 5 0 1 2 3 4 } dup length <iota> swap
|
||||
[ [ quickselect , ] curry each ] { } make . ;
|
||||
|
||||
MAIN: quickselect-demo
|
||||
Loading…
Add table
Add a link
Reference in a new issue