sorting.insertion: faster due to fewer nths.
parent
00bd0c52e7
commit
63b5886337
|
@ -5,10 +5,11 @@ IN: sorting.insertion
|
||||||
|
|
||||||
:: insert ( ... seq quot: ( ... elt -- ... elt' ) n -- ... )
|
:: insert ( ... seq quot: ( ... elt -- ... elt' ) n -- ... )
|
||||||
n zero? [
|
n zero? [
|
||||||
n n 1 - [ seq nth-unsafe quot call ] bi@ >= [
|
n n 1 - [ seq nth-unsafe ] bi@
|
||||||
n n 1 - seq exchange-unsafe
|
2dup [ quot call ] bi@ >= [ 2drop ] [
|
||||||
|
n 1 - n [ seq set-nth-unsafe ] bi-curry@ bi*
|
||||||
seq quot n 1 - insert
|
seq quot n 1 - insert
|
||||||
] unless
|
] if
|
||||||
] unless ; inline recursive
|
] unless ; inline recursive
|
||||||
|
|
||||||
PRIVATE>
|
PRIVATE>
|
||||||
|
|
Loading…
Reference in New Issue