Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
|
|
@ -0,0 +1,16 @@
|
|||
mergesort=: {{
|
||||
if. 2>#y do. y return.end.
|
||||
middle=. <.-:#y
|
||||
X=. mergesort middle{.y
|
||||
Y=. mergesort middle}.y
|
||||
X merge Y
|
||||
}}
|
||||
|
||||
merge=: {{ r=. y#~ i=. j=. 0
|
||||
while. (i<#x)*(j<#y) do. a=. i{x [b=. j{y
|
||||
if. a<b do. r=. r,a [i=. i+1
|
||||
else. r=. r,b [j=. j+1 end.
|
||||
end.
|
||||
if. i<#x do. r=. r, i}.x end.
|
||||
if. j<#y do. r=. r, j}.y end.
|
||||
}}
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
mergesort=: {{ r=. y [ stride=. 1
|
||||
while. stride < #r do. stride=. 2*mid=. stride
|
||||
r=. ;(-stride) (mid&}. <@merge (mid<.#) {.])\ r
|
||||
end.
|
||||
}}
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
mergesort 18 2 8 1 5 14 9 19 11 13 16 0 3 10 17 15 12 4 7 6
|
||||
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
(/:~ -: mergesort) ?~?10000
|
||||
1
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
case=. 1 * (0 = # x=. @:[) + 2 * (0 = # y=. @:])
|
||||
merge=. ({.x , }.x $: ])`(({.y , }.y $: [))@.({.x > {.y)`]`[@.case
|
||||
mergesort=. (>: o ? o # ($: o {. merge $: (o=. @:) }.) ]) ^: (1 < #)
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
mergesort 18 2 8 1 5 14 9 19 11 13 16 0 3 10 17 15 12 4 7 6
|
||||
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
||||
Loading…
Add table
Add a link
Reference in a new issue